使vue实现jQuery调用的两种方法


Posted in jQuery onMay 12, 2019

引言

如果说vue是前端工程化使用较多的骨架,那么JavaScript就是我们的前端的细胞。MVVM模式让我们体验到前端开发的便携,无需再过多的考虑DOM的操作。而vue的渐进式开发(逐步引用组件,按需引入),也让许多新手前端开发人员逐步绕过对jQuery的学习。jQuery需要记忆的内容颇多,这也让jQuery变得不那么受新入行开发者喜欢。

 在前端工程化的需求没有普及的时候,许多公司使用的是后端渲染技术,为了能够实现友好的前端交互效果,需要写好大量的jQuery、JavaScript和CSS,所以到目前还是有大量的公司维护和使用jQuery。

 前端工程化让许多人看到了开发的效率,但公司还是需要维护产品线,所以解决jQuery在vue的使用是每位前端工程师的必经之路,毕竟从零造轮子是一个非常痛苦耗时的事。

 今天我们提供两种方法引用,切记二选其一。

方法一:在webpage中引入JQ(推荐)

在vue中安装jQuery组件

老乡已经默认你的已经使用vue-cli脚手架进行操作了。至于如何使用vue-cli,可以进入vue的官网中查看相关开发文档。

1.在项目终端中输入npm install jquery -save-dev
2.在build文件夹中找到webpack.base.conf.js文件,打开,在第一行添加

var webpack = require('webpack')

效果:

// webpack.base.conf.js
var webpack = require('webpack')
'use strict'
const path = require('path')
const utils = require('./utils')
const config = require('../config')

3.在同样这个文件中(webpack.base.conf.js)的module.exports里添加:

plugins: [
 new webpack.ProvidePlugin({
  $:"jquery",
  jQuery:"jquery",
  "windows.jQuery":"jquery"
 })
 ],

1.在入口文件main.js中输入:

import $ from 'jQuery'

提示:这里无需再下面注册,有些IDE会提示标红,无需处理。

查看执行效果

在app.vue中写一个案例

使vue实现jQuery调用的两种方法

这种方法是在开发中比较看好的方法,方便易用。同样,也有不希望在所有的页面都引用到jQuery,这样我们就会考虑到按需引用。

方法二:按需引用jQuery方法

这种方法只在单页面中使用jQuery时进行操作。这种方法适用于极个别的交互页面中。

jQuery的安装和配置

1.和“方法一”中的操作一致,在终端中输入

npm install jquery --save-dev

2.找到build中webpack.base.conf文件

// webpack.base.conf
module.exports = {
 resolve: {
  extensions: ['.js', '.vue', '.json'],
  alias: {
   'vue$': 'vue/dist/vue.esm.js',
   '@': resolve('src'),
   'jquery': path.resolve(__dirname, '../node_modules/jquery/src/jquery')
  }
 }
}

jq的引用

在APP.vue中或者需要使用的地方

<template>
 <div>
  <p class="jj">请点击我</p>
 </div>
</template>
<script>
import $ from 'jquery'
export default {
 name: 'app',
 mounted () {
  $('.jj').click(function(){
   alert(1)
  })
 }
}
</script>

结语

方法千万条,道理第一条。本文是我在开发中遇到jq无法引入后查阅资料后整理的方法。但不论是什么方法,我们最终的目标都是要完成项目的需求。技术的革新速度和时代的发展飞快,jQuery也在不断发展,许多人觉得这类语言过于复杂多变,但这就如同学习python一样,开始“学习一时爽,一直学习一直爽”,但到达技术瓶颈时,你会发现总会让人很棘手。我就多次遇到vue处理的问题而就迫使我去阅读底层技术。所以,学无止境,有效努力,持续输出。

以上所述是小编给大家介绍的使vue实现jQuery调用的两种方法,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!

jQuery 相关文章推荐
如何编写jquery插件
Mar 29 jQuery
关于jQuery中fade(),show()起始位置的一点小发现
Apr 25 jQuery
jquery DataTable实现前后台动态分页
Jun 17 jQuery
浅谈jQuery框架Ajax常用选项
Jul 08 jQuery
基于jquery实现多级菜单效果
Jul 25 jQuery
jquery在启动页面时,自动加载数据的实例
Jan 22 jQuery
jQuery实现简单复制json对象和json对象集合操作示例
Jul 09 jQuery
jQuery中$原理实例分析
Aug 13 jQuery
jquery使用FormData实现异步上传文件
Oct 25 jQuery
jQuery选择器之基本过滤选择器用法实例分析
Feb 19 jQuery
JQuery事件委托原理与用法实例分析
May 13 jQuery
jquery插件实现图片悬浮
Apr 16 jQuery
jquery3和layui冲突导致使用layui.layer.full弹出全屏iframe窗口时高度152px问题
May 12 #jQuery
jQuery实现动态生成年月日级联下拉列表示例
May 11 #jQuery
详解jQuery如何实现模糊搜索
May 10 #jQuery
Easyui 去除jquery-easui tab页div自带滚动条的方法
May 10 #jQuery
jquery登录的异步验证操作示例
May 09 #jQuery
jQuery动态生成的元素绑定事件操作实例分析
May 04 #jQuery
jQuery实现条件搜索查询、实时取值及升降序排序的方法分析
May 04 #jQuery
You might like
JAVA/JSP学习系列之七
2006/10/09 PHP
基于文本的访客签到簿
2006/10/09 PHP
如何使用PHP批量去除文件UTF8 BOM信息
2013/08/05 PHP
php生成圆角图片的方法
2015/04/07 PHP
php 中奖概率算法实现代码
2017/01/25 PHP
关于php unset对json_encode的影响详解
2018/11/14 PHP
基于逻辑运算的简单权限系统(实现) JS 版
2007/03/24 Javascript
网页开发中的容易忽略的问题 javascript HTML中的table
2009/04/15 Javascript
javascript IFrame 强制刷新代码
2009/07/23 Javascript
Javascript 中的 &amp;&amp; 和 || 使用小结
2010/04/25 Javascript
jquery插件制作 手风琴Panel效果实现
2012/08/17 Javascript
jQuery.fn和jQuery.prototype区别介绍
2013/10/05 Javascript
Extjs4.0 ComboBox如何实现三级联动
2016/05/11 Javascript
关于JavaScript限制字数的输入框的那些事
2016/08/14 Javascript
jquery属性,遍历,HTML操作方法详解
2016/09/17 Javascript
解决拦截器对ajax请求的拦截实例详解
2016/12/21 Javascript
小程序测试后台服务的方法(ngrok)
2019/03/08 Javascript
轻松学习JavaScript函数中的 Rest 参数
2019/05/30 Javascript
Vue前端项目部署IIS的实现
2020/01/06 Javascript
《javascript设计模式》学习笔记七:Javascript面向对象程序设计组合模式详解
2020/04/08 Javascript
Python3基础之基本数据类型概述
2014/08/13 Python
Python3基础之函数用法
2014/08/13 Python
利用Fn.py库在Python中进行函数式编程
2015/04/22 Python
python使用clear方法清除字典内全部数据实例
2015/07/11 Python
查看django版本的方法分享
2018/05/14 Python
Python 2/3下处理cjk编码的zip文件的方法
2019/04/26 Python
Python3内置模块之json编解码方法小结【推荐】
2020/12/09 Python
Pycharm自动添加文件头注释和函数注释参数的方法
2020/10/23 Python
HTML5触摸事件演化tap事件介绍
2016/03/25 HTML / CSS
项目开发计划书
2014/01/09 职场文书
2014年大学生党课心得体会范文
2014/03/29 职场文书
工作说明书范文
2014/05/07 职场文书
自我查摆剖析材料
2014/10/11 职场文书
唱歌比赛拉拉队口号
2015/12/25 职场文书
解决Maven项目中 Invalid bound statement 无效的绑定问题
2021/06/15 Java/Android
vue2的 router在使用过程中遇到的一些问题
2022/04/13 Vue.js