首頁  >  問答  >  主體

javascript - Webpackresolve.alias 不適用於打字稿?

環境:

- node v6.9.2
- typescript v2.4.1
- webpack v1.15.0
- awesome-typescript-loader v3.2.1

問題:

在tsx中報錯 Module not found 'tools'...

import { toFieldValue } from '@utils/tools';

#
resolve : {
    alias: { 
        // 这里配置没有问题, jsx中可以正常使用
         "@utils": "./src/utils"
    }
}
import { toFieldValue } from '@utils/tools'

tsx配置

{
  "compilerOptions": {
    "outDir": "./dist/",
    "module": "commonjs",
    "target": "es6",
    "sourceMap": true,
    "allowSyntheticDefaultImports": true,
    "jsx": "react",
    "pretty": true,
    "noImplicitAny": true,
    "traceResolution": true,
    "baseUrl": ".",
    "paths": {
      "@utils/*": ["./src/utils/*"]
    },
    "lib": [
      "dom",
      "es2015.promise",
      "es5",
      "es2015.iterable",
      "es2015.generator",
      "es2015.symbol",
      "es7"]
  },
  "include": [
    "./src/**/*"
  ],
  "exclude": [
    "node_modules"
  ],
  "awesomeTypescriptLoaderOptions": {
    "useBabel": true,
    "useCache": true
  }
}
我想大声告诉你我想大声告诉你2664 天前1092

全部回覆(2)我來回復

  • 習慣沉默

    習慣沉默2017-07-05 10:38:58

    應該是可以使用alias的,樓主可以參考我的react-typescript模版項目,https://github.com/devlee/tpl...

    樓主這不能用,分析原因是tsconfig裡的paths應該是路徑,而不是直接是原始檔吧

    回覆
    0
  • 过去多啦不再A梦

    过去多啦不再A梦2017-07-05 10:38:58

    解決了~
    tool.js 必須宣告一個要宣告一個對應的tool.d.ts檔。
    醉了醉了~~~

    回覆
    0
  • 取消回覆