使用ts时,eslint报错相关问题

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文件
   ],
   ...
}
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容