使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仿京东商品放大浏览页面
Jun 06 jQuery
利用jquery去掉时光轴头尾部线条的方法实例
Jun 16 jQuery
jQuery中each循环的跳出和结束实例
Aug 16 jQuery
简单实现jQuery轮播效果
Aug 18 jQuery
jquery在vue脚手架中的使用方式示例
Aug 29 jQuery
Vue中正确使用jQuery的方法
Oct 30 jQuery
浅谈ajax在jquery中的请求和servlet中的响应
Jan 22 jQuery
jquery ajaxfileuplod 上传文件 essyui laoding 效果【防止重复上传文件】
May 26 jQuery
使用异步controller与jQuery实现卷帘式分页
Jun 18 jQuery
JS/jQuery实现超简单的Table表格添加,删除行功能示例
Jul 31 jQuery
如何在vue 中引入使用jquery
Nov 10 jQuery
jQuery class属性操作addClass()与removeClass()、hasClass()、toggleClass()
Mar 31 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
解决在laravel中leftjoin带条件查询没有返回右表为NULL的问题
2019/10/15 PHP
javascript 实用的文字链提示框效果
2010/06/30 Javascript
js验证输入是否为手机号码或电话号码示例
2013/12/30 Javascript
用于deeplink的js方法(判断手机是否安装app)
2014/04/02 Javascript
js实现的点击div区域外隐藏div区域
2014/06/30 Javascript
JavaScript通过元素的ID和name设置样式
2014/07/08 Javascript
关闭页面时window.location事件未执行的原因分析及解决方案
2014/09/01 Javascript
一个不错的js html页面倒计时可精确到秒
2014/10/22 Javascript
javaScript中push函数用法实例分析
2015/06/08 Javascript
JavaScript实现的圆形浮动标签云效果实例
2015/08/06 Javascript
jQuery实现的简单提示信息插件
2015/12/08 Javascript
jQuery插件开发精品教程让你的jQuery提升一个台阶
2016/01/27 Javascript
JS中dom0级事件和dom2级事件的区别介绍
2016/05/05 Javascript
第六篇Bootstrap表格样式介绍
2016/06/21 Javascript
Angular.JS中的this指向详解
2017/05/17 Javascript
JavaScript中错误正确处理方式小结你用对了吗
2017/10/10 Javascript
命令行批量截图Node脚本示例代码
2019/01/25 Javascript
JavaScript eval()函数定义及使用方法详解
2020/07/07 Javascript
解决vue 给window添加和移除resize事件遇到的坑
2020/07/21 Javascript
[03:48]显微镜下的DOTA2第四期——TP动作
2014/06/20 DOTA
[44:43]完美世界DOTA2联赛决赛日 FTD vs GXR 第一场 11.08
2020/11/11 DOTA
在Linux系统上部署Apache+Python+Django+MySQL环境
2015/12/24 Python
python提取包含关键字的整行数据方法
2018/12/11 Python
Python微医挂号网医生数据抓取
2019/01/24 Python
浅析border-radius如何兼容IE
2016/04/19 HTML / CSS
HTML5添加禁止缩放功能
2017/11/03 HTML / CSS
BIBLOO波兰:捷克的一家在线服装店
2018/03/09 全球购物
C#里面如何倒序排列一个数组的元素?
2013/06/21 面试题
自我评价的范文
2014/02/02 职场文书
教堂婚礼主持词
2014/03/14 职场文书
委托书如何写
2014/08/30 职场文书
党支部书记四风问题整改措施
2014/09/24 职场文书
2014年机关后勤工作总结
2014/12/16 职场文书
《你在为谁工作》心得体会(共8篇)
2016/01/20 职场文书
将图片保存到mysql数据库并展示在前端页面的实现代码
2021/05/02 MySQL
微前端qiankun改造日渐庞大的项目教程
2022/06/21 Javascript