1、混用ts和js时,js也报ts相关错误。
ts要求函数都必须有显示的返回类型。遇到的问题是,有的组件没用ts,也报同样的错误。解决方法如下,首先关闭该项eslint检查,然后在下面覆盖ts等文件的rules。
// .eslintrc.js文件
rules: {
"@typescript-eslint/explicit-module-boundary-types": "off",
},
"overrides": [
{
"files": ["*.ts", "*.tsx"],
"rules": {
"@typescript-eslint/explicit-module-boundary-types": ["error"]
}
}
]
2、css等资源文件在ts中使用
问题代码:
import variables from '@/assets/style/variables.scss';
这时会提示报错:Cannot find module '@/assets/style/variables.scss' or its corresponding type declarations。
参考了stackoverflow的一个相关问题解答以及这篇博客。解决方法如下:
首先,在项目根文件新建一个css.d.ts
文件
declare module '*.scss' {
const css: { [key: string]: string };
export default css;
}
然后,修改tsconfig.json
文件,在include中增加上述文件
// tsconfig.json
{
...
"include": [
...
"css.d.ts", // 增加的配置的.d.ts文件
],
...
}