Taro+Vue3.0+Typescript开发小程序遇到的报错解决

4 篇文章 0 订阅
1、defineConstants引入全局变量报错:Uncaught SyntaxError: missing ) after argument list,一定先加双引号,再加单引号
defineConstants: {
    BASE_URL:'"/api"',
},
2、import { getWindowHeight } from "@/utils/utils"报错:找不到模块“@/utils/global”或其相应的类型声明

在config文件夹下的index.js文件的alias设置别名

const path = require("path"); //顶部引入,不要忘记了

alias: {
    "@/components": path.resolve(__dirname, "..", "src/components"),
    "@/services": path.resolve(__dirname, "..", "src/services"),
    "@/utils": path.resolve(__dirname, "..", "src/utils"),
    "@/pages": path.resolve(__dirname, "..", "src/pages"),
    "@/icon": path.resolve(__dirname, "..", "src/icon"),
},

在tsconfig.json文件下修改

"paths": {
    "@/component/*": ["src/component/*"],
    "@/services/*": ["src/services/*"],
    "@/utils/*": ["src/utils/*"],
    "@/pages/*": ["src/pages/*"],
    "@/icon/*": ["src/icon/*"],
},
// ts 管理的文件
"include": [
    "src/**/*.ts",
    "src/**/*.tsx",
    "src/**/*.vue",
],
3、报错:Property “value” was accessed during render but is not defined on instance.

原因:data里面定义value报错,是因为忘记return了

data() {
    return {
        value: "",
    };
},
4、import时ts不识别.vue文件,在src根目录下,新建一个.d.ts后缀的文件,放入以下代码。
declare module '*.vue' {
    import { defineComponent } from 'vue';
    const Component: ReturnType<typeof defineComponent>;
    export default Component;
}
5、 Invalid prop: type check failed for prop “index”. Expected Number with value 12, got String with value “12”.

原因:for循环得到的index是String类型,在子组件定义类型定义成了Number类型。

props: {
    index: {
        type: String, //原Number类型报错需要改为String
        default: 0,
    },
}
6、Type ‘String’ is not assignable to type ‘string’,‘string’ is a primitive, but ‘String’ is a wrapper object. Prefer using ‘string’ when possible.

原因:在ts后缀的文件用String,在vue后缀的文件用string

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值