问题描述
项目按照uniapp
官网文档使用Vue-cli
创建/运行项目、项目一个月前能正常运行,隔了一个月未修改任何代码,项目运行不起来了。报错如下:
复现步骤
启动命令 npm run dev:mp-weixin
,项目前一周还能正常运行跑起来
出现上面 TypeError: loaderContext.getOptions is not a function
报错
看了很多网上的大佬们说是 less
、less-loader
版本不正确,我就将less
、less-loader
版本换了很多版本,还是不行。
下面是我的 package.json
部分包版本:
以下是 vue.config.js 配置:
系统信息:
npm run info
的运行结果
~/mobro.site/lubrication(master ✔) npm run info
lubrication@0.1.0 info /Users/mobro/mobro.site/lubrication
node node_modules/@dcloudio/vue-cli-plugin-uni/commands/info.js
uni-app v3.3.11
uni-app cli v2.0.1-33920220208001
Environment Info:
System:
OS: macOS 11.4
CPU: (8) x64 Apple M1
Binaries:
Node: 12.3.1 - ~/.nvm/versions/node/v12.3.1/bin/node
Yarn: 1.16.0 - ~/.nvm/versions/node/v12.3.1/bin/yarn
npm: 6.9.0 - ~/.nvm/versions/node/v12.3.1/bin/npm
Browsers:
Chrome: 98.0.4758.109
Firefox: 70.0.1
Safari: 14.1.1
npmPackages:
@dcloudio/types: * => 2.5.17
@dcloudio/uni-app-plus: ^2.0.1-33520211229002 => 2.0.1-33920220208001
@dcloudio/uni-app-plus-nvue: 0.0.1
@dcloudio/uni-app-plus-nvue-v8: 0.0.1
@dcloudio/uni-automator: ^2.0.1-33520211229002 => 2.0.1-33920220208001
@dcloudio/uni-cli-i18n: ^2.0.1-33520211229002 => 2.0.1-33920220208001
@dcloudio/uni-cli-shared: ^2.0.1-33520211229002 => 2.0.1-33920220208001
@dcloudio/uni-h5: ^2.0.1-33520211229002 => 2.0.1-33920220208001
@dcloudio/uni-helper-json: * => 1.0.13
@dcloudio/uni-i18n: ^2.0.1-33520211229002 => 2.0.1-33920220208001
@dcloudio/uni-migration: ^2.0.1-33520211229002 => 2.0.1-33920220208001
@dcloudio/uni-mp-360: ^2.0.1-33520211229002 => 2.0.1-33920220208001
@dcloudio/uni-mp-alipay: ^2.0.1-33520211229002 => 2.0.1-33920220208001
@dcloudio/uni-mp-baidu: ^2.0.1-33520211229002 => 2.0.1-33920220208001
@dcloudio/uni-mp-kuaishou: ^2.0.1-33520211229002 => 2.0.1-33920220208001
@dcloudio/uni-mp-lark: ^2.0.1-33520211229002 => 2.0.1-33920220208001
@dcloudio/uni-mp-qq: ^2.0.1-33520211229002 => 2.0.1-33920220208001
@dcloudio/uni-mp-toutiao: ^2.0.1-33520211229002 => 2.0.1-33920220208001
@dcloudio/uni-mp-vue: ^2.0.1-33520211229002 => 2.0.1-33920220208001
@dcloudio/uni-mp-weixin: ^2.0.1-33520211229002 => 2.0.1-33920220208001
@dcloudio/uni-quickapp-native: ^2.0.1-33520211229002 => 2.0.1-33920220208001
@dcloudio/uni-quickapp-webview: ^2.0.1-33520211229002 => 2.0.1-33920220208001
@dcloudio/uni-stat: ^2.0.1-33520211229002 => 2.0.1-33920220208001
@dcloudio/uni-template-compiler: ^2.0.1-33520211229002 => 2.0.1-33920220208001
@dcloudio/uni-ui: ^1.4.9 => 1.4.12
@dcloudio/vue-cli-plugin-hbuilderx: ^2.0.1-33520211229002 => 2.0.1-33920220208001
@dcloudio/vue-cli-plugin-uni: ^2.0.1-33520211229002 => 2.0.1-33920220208001
@dcloudio/vue-cli-plugin-uni-optimize: ^2.0.1-33520211229002 => 2.0.1-33920220208001
@dcloudio/webpack-uni-mp-loader: ^2.0.1-33520211229002 => 2.0.1-33920220208001
@dcloudio/webpack-uni-nvue-loader: 0.0.1
@dcloudio/webpack-uni-pages-loader: ^2.0.1-33520211229002 => 2.0.1-33920220208001
@hap-toolkit/dsl-vue: 0.6.13
@vue/babel-helper-vue-jsx-merge-props: 1.2.1
@vue/babel-helper-vue-transform-on: 1.0.2
@vue/babel-plugin-jsx: 1.1.1
@vue/babel-plugin-transform-vue-jsx: 1.2.1
@vue/babel-preset-app: 4.5.15
@vue/babel-preset-jsx: 1.2.4
@vue/babel-sugar-composition-api-inject-h: 1.2.1
@vue/babel-sugar-composition-api-render-instance: 1.2.4
@vue/babel-sugar-functional-vue: 1.2.2
@vue/babel-sugar-inject-h: 1.2.2
@vue/babel-sugar-v-model: 1.2.3
@vue/babel-sugar-v-on: 1.2.3
@vue/cli-overlay: 4.5.15
@vue/cli-plugin-babel: ^4.5.0 => 4.5.15
@vue/cli-plugin-router: 4.5.15
@vue/cli-plugin-typescript: * => 5.0.1
@vue/cli-plugin-vuex: 4.5.15
@vue/cli-service: ^4.5.0 => 4.5.15
@vue/cli-shared-utils: 4.5.15
@vue/component-compiler-utils: 3.3.0 (3.3.0)
@vue/devtools-api: 6.0.0-beta.15
@vue/preload-webpack-plugin: 1.1.2
@vue/shared: ^3.0.0 => 3.2.31
@vue/web-component-wrapper: 1.3.0
mpvue-page-factory: 1.0.1
mpvue-template-compiler: 1.0.13
uni-h5-vue: 2.6.10
uni-mp-vue: 2.6.10
vue: ^2.6.11 => 2.6.14
vue-class-component: ^6.3.2 => 6.3.2 (7.2.6)
vue-hot-reload-api: 2.3.4
vue-lazyload: 1.2.3
vue-loader: 15.9.8 (16.8.3, 15.9.8)
vue-property-decorator: ^8.0.0 => 8.5.1
vue-router: 3.0.1
vue-style-loader: 4.1.3 (4.1.3)
vue-template-compiler: ^2.6.11 => 2.6.14 (2.6.14)
vue-template-es2015-compiler: 1.9.1
vue3: 1.0.0
vuex: ^3.2.0 => 3.6.2 (3.6.2)
npmGlobalPackages:
@vue/cli: 3.8.2
#############################
#############################
解决方案
首先项目没有修改过任何代码,是平白无故不能使用,那肯定是哪个包被更新了。经过一番查找,最终发现了 @vue/cli-plugin-typescript
包在16天前有更新,于是就降了这个包版本。bingo~ 问题解决了,可以关注公众号【今个儿简讯】了。
## 解决时用到的命令
## 查看此包的历史版本
npm view @vue/cli-plugin-typescript version ## 关注公众号【今个儿简讯】,每日快速浏览今日大事件
npm i -D @vue/cli-plugin-typescript@4.5.15