Vue uni-app以H5模式引入Jquery配置教程

目录
  • Vue配置Jquery
  • uni-app配置Jquery
  • 总结

Vue配置Jquery

  • 安装Jquery
   npm install jquery --save
   or
   yarn add jquery
  • main.js中引入jquery,供全局使用
import Vue from 'vue'
import jquery from "jquery";
Vue.prototype.$ = jquery;
  • 在页面中使用,运行如下代码,在控制台就可以查看引入结果
<template>
  <view class="content">
    <image class="logo" src="/static/logo.png"></image>
    <view class="text-area">
      <text class="title">{{title}}</text>
    </view>
  </view>
</template>
<script>
  export default {
    data() {
      return {
        title: 'Hello'
      }
    },
    mounted() {
      console.log(this.$, "======引入Jquery成功=====");
    },
    methods: {
    }
  }
</script>

uni-app配置Jquery

  • h5模式

uni-app的h5模式与Vue的模式基本一样,也可以直接引入文件的使用,具体使用如下:

<template>
  <view class="content">
    <image class="logo" src="/static/logo.png"></image>
    <view class="text-area">
      <text class="title">{{title}}</text>
    </view>
  </view>
</template>
<script>
  import $ from "../../js_sdk/jquery-3.6.0.min.js";
  export default {
    data() {
      return {
        title: 'Hello'
      }
    },
    mounted() {
      console.log($, "======uni-app的H5模式引入JQuery=====");
    },
    methods: {
    }
  }
</script>
<style>
  .content {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
  }
  .logo {
    height: 200rpx;
    width: 200rpx;
    margin-top: 200rpx;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 50rpx;
  }
  .text-area {
    display: flex;
    justify-content: center;
  }
  .title {
    font-size: 36rpx;
    color: #8f8f94;
  }
</style>

项目文件配置图

  • APP-PLUS 模式

app-plus模式,JQuery是不能直接被识别的,需要通过uni-app 提供的renderJS 模式 来使用,也就是说,如果想使用JQuery在app模式,需要逻辑层与视图层交互才可以,如果还是按照H5模式下使用,会报如下错误:

function (e) {if (!e.document)
    throw new Error("jQuery requires a window with a document");
    return t(e);
},
======uni-app的H5模式引入JQuery
===== at pages/index/index.vue:19

采用renderJS模式,jquery采用是本地文件引入的方式(也可以通过npm/yarn 命令安装 )如下:

<template>
  <view class="content">
    <image class="logo" src="/static/logo.png"></image>
    <view class="text-area">
      <text class="title">{{title}}</text>
    </view>
  </view>
</template>
<script>
  export default {
    data() {
      return {
        title: 'Hello'
      }
    },
  }
</script>
<script lang="renderjs" module="turnjs">
  import $ from "../../js_sdk/jquery-3.6.0.min.js";
  export default {
    mounted(){
      console.log($, "======uni-app的App模式引入JQuery成功=====");
    }
  }
</script>
<style>
  .content {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
  }
  .logo {
    height: 200rpx;
    width: 200rpx;
    margin-top: 200rpx;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 50rpx;
  }
  .text-area {
    display: flex;
    justify-content: center;
  }
  .title {
    font-size: 36rpx;
    color: #8f8f94;
  }
</style>

手机模拟器运行代码后,可以看到控制台成功打印了JQuery对象。

function S(e, t) {return new S.fn.init(e, t);},
======uni-app的App模式引入JQuery成功
===== at pages/index/index.vue:4 at app-view.js:1076

总结

Vue模式与uni-app的h5模式是一样的,唯一不同的是uni-app中APP-PLUS模式,需要借助renderJS或者WSX第三方内置组件,才能更有效的使用JQuery。

特别注意,就是某些第三方组件依赖JQuery时,在renderJS引入,需要注意引入顺序。第一个引入JQuery、第二个在引入依赖JQuery的第三方组件。

<script lang="renderjs" module="turnjs">
  import "../../js_sdk/jquery-3.6.0.min.js";
  import xxx from '@/utils/turn.js';
  export default {
    XXXX
  }
</script>

当然了,使用JQuery一般都是特殊情况下,如果有空闲时间,还是需要写成组件时最好不过的了。

以上就是Vue uni-app以H5模式引入Jquery配置教程的详细内容,更多关于Vue uni-app配置Jquery的资料请关注我们其它相关文章!

(0)

相关推荐

  • Uni-app跨平台开发应用入门实战

    目录 引言 一.什么是Uni-app? 二.Uni-app的安装与使用 1. 安装Node.js和HBuilderX 2. 创建Uni-app项目 3. 运行Uni-app项目 三.Uni-app的基本语法 1. 模板语法 2. 样式语法 3. 事件处理 四.Uni-app的组件库 1. 基础组件库 2. 扩展组件库 五.Uni-app的常用API 1. 跳转页面 2. 获取设备信息 3. 获取位置信息 4. 拍照和选择图片 5. 发起网络请求 六.Uni-app的打包和发布 1. 原生应用程序

  • uni-app路由配置文件pages.json平台化拆分

    目录 对uni-app路由配置文件pages.json进行平台化拆分 例子: 优化思路: 过程: 对uni-app路由配置文件pages.json进行平台化拆分 背景:公司打造小程序矩阵化,以uni-app作为技术栈生成不同平台的小程序代码.小程序项目包含5个平台的代码,虽然是一份代码运行5个平台,但是各个平台又有差异,在代码里面需要做很多条件编译进行兼容处理.随着项目的壮大与页面的增多,控制路由的pages.json已经异常庞大且代码可读性差(想找一个页面需要找到上下文切换,浪费时间并且可能误

  • uni-app的pages.json处理方案示例

    目录 uni-pages-hot-modules uni-app的pages.json的模块化及模块热重载 安装 注意! uni-pages-hot-modules做了什么 uni-app的“彩蛋” pages.js输出的函数参数 pagesJson < Object > loader < Object > addDependency pages.js的模块化 pages.js示例 模块的规范 module1.js示例 其他 uni-pages-hot-modules github

  • vue项目中实现全局引入jquery

    目录 vue项目全局引入jquery vue引入jquery遇到的坑 引入 使用jquery 遇到的坑 解决办法 vue项目全局引入jquery 说明:在index.html直接用<script>标签引入,不会生效的,正确引入姿势如下: 1:打开package.json文件,手动在dependencies中加入如下代码: 2:运行cnpm install,这样就会引入版本为2.1.1的jquery作为依赖: 3:打开webpack.base.conf.js文件,对该文件进行两处修改,如下图:

  • vue中如何引入jQuery和Bootstrap

    这两天学习了Vue.js ,所以,今天添加一点小笔记. 一.引入jQuery 在当前项目的目录下(就是package.json),运行命令 cnpm install jquery --save-dev  这样就将jquery安装到了这个项目中. 然后修改webpack.base.conf.js(在build文件下)两个地方: 1:加入 var webpack=require('webpack'); 2 在module.exports的里面加入 plugins: [ new webpack.opt

  • Vue引入jquery实现平滑滚动到指定位置

    在以往的做法里首选jquery的animate实现,但是Vue里并没有这个方法.如何在Vue项目中实现点击导航平滑滚动到指定位置,为了这效果我是快要崩溃了,上网查阅了很久发现并没有真正意义上解决这个问题的,之前参考了一位博主的想法:通过在一定时间内定时分步长滚动,连续起来后肉眼观察就是平滑滚动的效果(点击查看),当时看到这篇文章我是心花怒放,赶紧参考代码写进去,然并卵...根本没有效果,后来联系博主讨论后得出结论可能是我的vue2.4版本对计时器不友好,建议我降版本,这样的话...我还是继续研究

  • vue引入jquery时报错 $ is not defined的问题及解决

    目录 vue引入jquery时报错 $ is not defined 安装JQuery 统一webpack版本 新建配置文件 vue错误笔记 Vue is not defined 事情的经过 找到两种解决方案 vue引入jquery时报错 $ is not defined 以免日后再次遇到忘记. 安装JQuery npm install --save jquery 统一webpack版本 不同版本处理方法可能不同,我们这里就统一一下webpack版本 npm uninstall webpack

  • vue开发移动端h5环境搭建的全过程

    目录 技术选型 环境搭建 引入库 配置环境 运行 网络封装 结语 补充 总结 技术选型 公司现在需要开发移动端的h5,使用现在比较流行的vue 2.0开发,使用的脚手架是Vant2,网络访问使用的是axios,路由跳转使用的是vue-router,开发工具是vscode,作为一个安卓开发程序员,对vue是不熟悉的,好在把环境搭建起来了,通过博客记录一下 Vant 2 vue cli vue vue中使用axios最详细教程 vue router 环境搭建 引入库 我这里已经安装好了nodejs,

  • vue单页应用中如何使用jquery的方法示例

    前言 本文给大家介绍的是关于在vue单页应用中使用jquery的相关内容,主要记录一个今天用到的vue-cli建立的应用中引入jquery的方式.下面话不多说,来一起看看详细的介绍吧. 方法如下: 1.首选通过npm安装jquery npm install jquery --save 2.在build/webpack.base.conf文件当中引入jquery module.exports = { ... resolve: { extensions: ['.js', '.vue', '.json

  • uni app仿微信顶部导航条功能

    最近一直在学习uni-app开发,由于uniapp是基于vue.js技术开发的,只要你熟悉vue,基本上很快就能上手了. 在开发中发现uni-app原生导航栏也能实现一些顶部自定义按钮+搜索框,只需在page.json里面做一些配置即可.设置app-plus,配置编译到App平台的特定样式.dcloud平台对app-plus做了详细说明:app-plus配置,需注意 目前暂支持H5.App端,不支持小程序. 在page.json里配置app-plus即可 { "path": "

  • vue使用Vuex状态管理模式

    目录 1.基于单向数据流问题而产生了Vuex 2.安装及使用 3.核心及使用方法 (1)State (2) Getters (3) Mutation (4) Action (5)Modules 4.Vuex和全局对象的不同 1.基于单向数据流问题而产生了Vuex 单向数据流是vue 中父子组件的核心概念,props 是单向绑定的.当父组件的属性值发生变化的时候,会传递给子组件发生相应的变化,从而形成一个单向下行的绑定,父组件的属性改变会流向下行子组件中,但是反之,为了防止子组件无意间修改了父组件

  • Vue的三种路由模式总结

    目录 路由模式解析 1.hash模式 2.history模式 3.abstract模式 路由三个基本概念 vue中实现路由还是相对简单的 vue-cli创建一个项目体验一下, 安装vue-router 路由模式解析 这里要讲vue-router的路由模式,首先要了解的一点就是路由是由多个URL组成的,使用不同的URL可以相应的导航到不同的位置.如果有进行过服务器开发或者对http协议有所了解就会知道,浏览器中对页面的访问是无状态的,所以我们在切换不同的页面时都会重新进行请求. 而实际使用vue和

  • vue路由划分模块并自动引入方式

    目录 路由划分模块并自动引入 创建路由文件 vue-router模块划分问题 路由整体结构 1.区分线上和开发环境---config 2.通用路由---common.js 3.业务模块---modules 4.导出所有---index.js 5.权限验证---permission.js 路由划分模块并自动引入 创建路由文件 主路由文件index.js 内容,这样配置后只要在router目录下按照xxx.router.js的格式创建路由文件,就可以自动加入到路由容器中 import Vue fro

随机推荐