1、混用ts和js時,js也報ts相關錯誤。
ts要求函數(shù)都必須有顯示的返回類型。遇到的問題是,有的組件沒用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文件
],
...
}