后缀名’.vue’

在 ts+vue2 的项目中,引入组件必须加上后缀名’.vue’ 否则ts会提示无法识别类型声明。
因为配置的vue 类型声明文件:

  1. // src/shims-vue.d.ts
  2. declare module '*.vue' {
  3. import Vue from 'vue';
  4. export default Vue;
  5. }

是针对 .vue 这个后缀进行配置的,
如果在ts 中引入vue 文件的时候不加后缀,ts 无法识别这个文件类型或者说不认识这个文件是什么模块的:
image.png

总之,ts 中,vue的引入必须加后缀。

ts-loader

默认情况下,ts-loader 对ts 代码进行类型检查,
ts-loader , 可以配置关闭 代码检查,只进行代码转化:

  1. transpileOnly: true,

ts 模块补充文档:
https://www.typescriptlang.org/docs/handbook/declaration-merging.html#module-augmentation

ts 无法识别 import * as filters from “./filters”;