vue/cli 3 引入 使用jQuery

注意这里配置的是vue-cli3.0引入jquery的方法,不是vue-cli2.0的配置方法

一、安装jquery

  npm install jquery --save

二、一般安装成功后在package.json文件内的dependencies项中会有"jquery": “^1.12.4”,如果没有可以手动添加。需要注意的是,现在我们都是直接使用模板创建项目的,所以第一步是可以省略的(不要说我第二步才说第一步可以省略,这是你自己的问题,看任何东西都是先看了再去做的)。

三、打开.eslintrc.js 文件,找到env ,在里面 添加 jquery:true,默认应该是只有node:true,如果都没有,那就加上env呗

四、打开vue.config.js 文件,在文件的头部位置加上const webpack = require(‘webpack’),然后在module.exports中,添加

configureWebpack: {

plugins: [

  new webpack.ProvidePlugin({

    $:"jquery",

    jQuery:"jquery",

    "windows.jQuery":"jquery"

  })

]

}

这一步骤类似vue-cli2.0的配置方法

五、在main.js中添加“import $ from 'jquery”,到此步,jquery的配置就完成了

<think>根据提供的 package.json文件,我们可以分析出以下关键信息:1.Vue版本:dependencies中的 "vue":"^3.2.40"表明这是Vue3项目。2.但是,devDependencies中的 "vue-template-compiler": "^2.6.11"是Vue2的编译器,这会导致版本冲突。问题:项目依赖中同时存在Vue3Vue2的编译器,这会导致运行失败。解决方案:我们需要将 `vue-template-compiler`替换为Vue3的编译器。实际上,Vue3不再需要`vue-template-compiler`,而是使用 `@vue/compiler-sfc`。步骤:1.移除 `vue-template-compiler`2.安装 `@vue/compiler-sfc`作为开发依赖同时,注意其他依赖的兼容性:- element-ui是 Vue2的组件库,Vue3应该使用ElementPlus。-vue-router和vuex的版本:vue-router3.x是Vue2的,Vue3应该使用vue-router4.x。vuex3.x是 Vue2的,Vue3应该使用vuex4.x。因此,这个项目存在依赖不兼容的问题,需要升级相关依赖。具体操作:1.升级element-ui为 ElementPlus(适用于 Vue3):-移除element-ui:`npmuninstallelement-ui`-安装 ElementPlus:`npminstall element-plus --save`2.升级 vue-router到4.x:-移除旧版:`npm uninstall vue-router`-安装新版:`npminstall vue-router@4 --save`3.升级 vuex到4.x:-移除旧版:`npmuninstallvuex`-安装新版:`npm installvuex@4--save`4.移除vue-template-compiler并安装 @vue/compiler-sfc:- `npm uninstall vue-template-compiler`-`npminstall @vue/compiler-sfc--save-dev`5.检查其他依赖的兼容性:- vue-quill-editor:查看是否有支持Vue3的版本,可能需要替换为其他富文本编辑器(如quill的 Vue3封装)。-vue-json-excel:查看其是否支持Vue3。注意:由于升级了多个依赖,代码中也需要相应调整。例如,将ElementUI替换为Element Plus:-在 main.js中,将ElementUI的引入改为 ElementPlus:```javascript//移除//import ElementUI from&#39;element-ui&#39;//import &#39;element-ui/lib/theme-chalk/index.css&#39;//Vue.use(ElementUI)//替换为importElementPlusfrom &#39;element-plus&#39;import &#39;element-plus/dist/index.css&#39;importlocalefrom &#39;element-plus/lib/locale/lang/zh-cn&#39;//如果需要中文createApp(App).use(ElementPlus,{ locale}).use(router).use(store).mount(&#39;#app&#39;)```对于 vue-router和 vuex的升级,需要修改创建实例的方式:-vue-router4.x的创建方式:```javascriptimport {createRouter, createWebHistory} from&#39;vue-router&#39;constrouter= createRouter({history: createWebHistory(),routes})```-vuex4.x的创建方式:```javascriptimport{ createStore }from &#39;vuex&#39;export defaultcreateStore({state:{},mutations:{},actions:{},modules:{}})```另外,注意vue-quill-editor可能不兼容 Vue3,可以尝试使用`@vueup/vue-quill`(支持 Vue3的版本)。如果项目中有使用jQuery,建议移除,因为 Vue不推荐直接操作 DOM。最后,运行项目:```bashnpminstallnpmrun dev```如果遇到其他错误,需要根据具体错误信息调整。总结:该项目原本是 Vue3项目,但错误地使用Vue2的编译器和一些Vue2的库(如element-ui、vue-router3vuex3),需要升级这些库到Vue3兼容版本。注意:由于升级过程可能涉及大量代码修改,需要仔细测试。如果不想升级,另一种方案是回退到Vue2,但根据package.json中的vue版本是3,所以推荐升级依赖。但是,请注意:package.json中vue3.2.40,而 vue-template-compiler是2.6.11,这显然是冲突的,所以必须解决。相关问题:§§相关问题§§:1.Vue3中如何使用ElementPlus替换ElementUI?2.如何将Vue Router从v3升级到v43.Vuex4Vuex3的主要区别是什么?4.Vue3项目中如何正确配置编译器?</think>### 分析项目依赖问题及解决方案 根据您提供的 `package.json` 文件,项目存在严重的版本兼容性问题: #### 主要问题: 1. **Vue 版本冲突**: - `"vue": "^3.2.40"` (Vue 3) - `"vue-template-compiler": "^2.6.11"` (Vue 2 编译器) - **结果**:运行时会报错 `Vue packages version mismatch` 2. **库版本不兼容**: - `element-ui` (仅支持 Vue 2) - `vue-router@3` (仅支持 Vue 2) - `vuex@3` (仅支持 Vue 2) --- ### 解决方案(二选一): #### 方案一:升级到 Vue 3 生态(推荐) ```bash # 1. 移除不兼容包 npm uninstall element-ui vue-router vuex vue-template-compiler # 2. 安装 Vue 3 兼容包 npm install element-plus vue-router@4 vuex@4 @vue/compiler-sfc ``` ```js // main.js 修改示例 (Vue 3) import { createApp } from &#39;vue&#39; import ElementPlus from &#39;element-plus&#39; import &#39;element-plus/dist/index.css&#39; import App from &#39;./App.vue&#39; import router from &#39;./router&#39; import store from &#39;./store&#39; const app = createApp(App) app.use(ElementPlus) app.use(router) app.use(store) app.mount(&#39;#app&#39;) ``` #### 方案二:降级到 Vue 2 ```bash # 1. 降级 Vue 核心 npm install vue@2.6.14 # 2. 确保编译器版本一致 npm install vue-template-compiler@2.6.14 # 3. 其他库保持原版本 ``` ```js // main.js 修改示例 (Vue 2) import Vue from &#39;vue&#39; import ElementUI from &#39;element-ui&#39; import &#39;element-ui/lib/theme-chalk/index.css&#39; import App from &#39;./App.vue&#39; import router from &#39;./router&#39; import store from &#39;./store&#39; Vue.use(ElementUI) new Vue({ router, store, render: h => h(App) }).$mount(&#39;#app&#39;) ``` --- ### 关键修改点说明: 1. **编译器匹配**: - Vue 2 必须使用 `vue-template-compiler` 且版本需与 `vue` 一致 - Vue 3 使用 `@vue/compiler-sfc` 替代编译器 2. **Element UI/Plus 切换**: ```diff - import ElementUI from &#39;element-ui&#39; + import ElementPlus from &#39;element-plus&#39; - Vue.use(ElementUI) + app.use(ElementPlus) ``` 3. **路由和状态管理升级**: ```js // Vue 3 路由创建方式 import { createRouter, createWebHistory } from &#39;vue-router&#39; const router = createRouter({ history: createWebHistory(), routes }) ``` --- ### 项目启动命令: ```bash # 安装依赖 npm install # 启动开发服务器 npm run dev # 根据 scripts 配置 ``` --- ###
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值