typescript - Webpack 解析模块路径。找不到模块:错误:无法解析“./internal/Observable”
问题描述
我已经使用webpack@4
&webpack-cli@3
来构建 typescript 演示rxjs@6.6.3
,但出现错误。代码很简单:
import {Subject} from "rxjs";
const stateChange = new Subject();
我运行npm build
并得到:
Module not found: Error: Can't resolve './internal/Observable' in 'D:\working\test\node_modules\rxjs\_esm5'
但是那个Observable.js
是有的,然后我在Observable.ts
旁边加了一个,webpack找到了'./internal/Observable'
模块,但是还是有其他的错误,为什么webpack不能识别.js
文件?我用ts-loader@8
.
包.json
{
"name": "test",
"version": "1.0.0",
"description": "",
"main": "index.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1",
"build": "npx webpack --display-error-details --config webpack.config.js"
},
"author": "",
"license": "ISC",
"devDependencies": {
"lit-html": "^1.3.0",
"lite-html": "^0.2.4",
"ts-node": "^9.0.0"
},
"dependencies": {
"rxjs": "^6.6.3",
"ts-loader": "^8.0.11",
"typescript": "^4.0.5",
"webpack": "^4.44.2",
"webpack-cli": "^3.3.12"
}
}
tsconfig.json
{
"compilerOptions":{
"outDir": "dist",
"target": "ES5",
"inlineSourceMap": true,
"inlineSources": true,
"declaration": true,
"declarationDir": "dist",
"allowJs": true,
"lib": ["ES6", "DOM"],
"experimentalDecorators": true
},
"files": [
"src/index.ts"
]
}
webpack.config.js
const path = require('path');
module.exports = {
entry: {
index: './src/index.ts'
},
module: {
rules: [
{
test: /\.ts?$/,
use: 'ts-loader',
exclude: /node_modules/
}
]
},
output: {
filename: '[name].min.js',
path: path.resolve(__dirname, 'dist')
},
mode: ENV_PROD,
resolve: {
extensions: [ '.ts']
}
}
解决方案
我发现了问题,里面的resolve.extensions
选项webpack.config.js
应该包含'.js'。谢谢@Walid M
推荐阅读
- c# - 扩大和缩小列表
vs 使用索引作为值的大型布尔数组 - nlp - fasttext中是否有任何方法可以将两个单词作为输入并返回它们的相似性
- python - “city_id”列中的空值违反非空约束
- javascript - 从 URLSearchParams 转换字符串数组值
- kubernetes - kube-proxy 无法启动“错误:无法识别的密钥:”
- html - 如何“垂直中间”一个“最大高度”样式的元素?(没有 JS)
- java - RMI 服务器接口(调度程序)方法抛出 java.lang.NoClassDefFoundError
- r - 如何执行具有集群稳健标准错误的 TukeyHSD?
- android - 使用 android Dagger 2 和 Robolectric 进行单元测试
- java - 错误:找不到适合 jdbc:ucanaccess 的驱动程序