1、 vue3+vuex4+ts开发的支付宝小程序,在main.ts上用app.use(store),报错Cannot read property 'VUE_DEVTOOLS_GLOBAL_HOOK' of undefined,运行在微信小程序上不报错
解决办法如下:
进入 /node_modules/vuex/dist/vuex.esm-browser.js
和 /node_modules/vuex/dist/vuex.esm-bundler.js
。搜索useDevtools
,你会看到以下代码:
var useDevtools = this._devtools !== undefined
? this._devtools
: (process.env.NODE_ENV !== 'production') || __VUE_PROD_DEVTOOLS__
if (useDevtools) {
addDevtools(app, this)
}
将这部分全部注释掉即可
2、 开发支付宝小程序,在自定义组件中使用emit会报错TypeError: Cannot read property 'vnode' of undefined,在微信小程序端没有问题
原因: 在支付宝端this下面没有$元素,
解决: 已通过下面打补丁的方式解决了这个问题
3、 Cannot find module '@/store' or its corresponding type declarations.
原因: 当前项目的上级目录为根目录, Vetur 不知道当前哪一层文件夹才是真正的根目录
解决: 在 tsconfig.json 中配置 baseUrl 和 paths,store后面加/*
{
"compilerOptions": {
"baseUrl": "./",
"paths": {
"@/store/*":["src/store/*"],
}
}
}
4、 Syntax Error: 'import' and 'export' may only appear at the top level. (20:4)
解决办法如下:export多个工具函数时,少写了}大括号,加上就可以了