不提供文件扩展名就无法导入 TypeScript 模块
Can't import TypeScript modules without providing the file extension
我是 TypeScript 的新手,我希望我应该能够导入我的 TS 文件而无需指定它们是 TS 文件。
我必须做
import {sealed} from "./decorators/decorators.ts";
而不是我想要的是正确的方法
import {sealed} from "./decorators/decorators";
这会导致错误表明它只查找以 .js 或 .jsx 结尾的文件
我的tsconfig.json看起来像这样
{
"compileOnSave": true,
"compilerOptions": {
"module": "commonjs",
"moduleResolution": "node",
"jsx": "react",
"allowJs": true,
"target": "es6",
"removeComments": true,
"experimentalDecorators": true,
"emitDecoratorMetadata": true
},
"exclude": [
"node_modules",
"typings/browser",
"typings/browser.d.ts"
]
}
如果您使用的是 webpack,请尝试将此添加到您的 webpack.config.js 文件中:
resolve: {
extensions: ['', '.js', '.jsx', '.ts', '.tsx']
},
thitemple 的回答对我有用,但我不得不从数组中删除 ''
,因为它阻止了 webpack 的启动。
resolve: {
extensions: ['.js', '.jsx', '.ts', '.tsx']
},
我是 TypeScript 的新手,我希望我应该能够导入我的 TS 文件而无需指定它们是 TS 文件。
我必须做
import {sealed} from "./decorators/decorators.ts";
而不是我想要的是正确的方法
import {sealed} from "./decorators/decorators";
这会导致错误表明它只查找以 .js 或 .jsx 结尾的文件
我的tsconfig.json看起来像这样
{
"compileOnSave": true,
"compilerOptions": {
"module": "commonjs",
"moduleResolution": "node",
"jsx": "react",
"allowJs": true,
"target": "es6",
"removeComments": true,
"experimentalDecorators": true,
"emitDecoratorMetadata": true
},
"exclude": [
"node_modules",
"typings/browser",
"typings/browser.d.ts"
]
}
如果您使用的是 webpack,请尝试将此添加到您的 webpack.config.js 文件中:
resolve: {
extensions: ['', '.js', '.jsx', '.ts', '.tsx']
},
thitemple 的回答对我有用,但我不得不从数组中删除 ''
,因为它阻止了 webpack 的启动。
resolve: {
extensions: ['.js', '.jsx', '.ts', '.tsx']
},