javascript - Webpackresolve.alias 不适用于打字稿?
我想大声告诉你
我想大声告诉你 2017-07-05 10:36:58
0
2
1064

环境:

- 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';
  • 在webpack的配置中添加resolve.alias

resolve : { alias: { // 这里配置没有问题, jsx中可以正常使用 "@utils": "./src/utils" } }
  • jsx中引用(可以使用)

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 } }
  • webpack添加配置(webpackConfig是webpack的配置)

    webpackConfig.resolve.plugins = [(new TsConfigPathsPlugin({ configFileName: "tsconfig.json", compiler: "typescript", }))];
我想大声告诉你
我想大声告诉你

全部回复 (2)
習慣沉默

应该是可以使用alias的,楼主可以参考我的react-typescript模版项目,https://github.com/devlee/tpl...

楼主这不能用,分析原因是tsconfig里的paths应该是路径,而不是直接是源文件吧

    过去多啦不再A梦

    解决了~
    tool.js 必须要声明一个要声明一个对应的tool.d.ts文件。
    醉了醉了~~~

      最新下载
      更多>
      网站特效
      网站源码
      网站素材
      前端模板
      关于我们 免责声明 Sitemap
      PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!