duc*_*cin 10 javascript rxjs typescript webpack es6-modules
我有一个问题,加载rxjs
到一个简单的webpack设置(没有角度).我在跑:
./node_modules/.bin/webpack --config webpack.config.js --watch
Run Code Online (Sandbox Code Playgroud)
启动webpack.应用程序的唯一文件src/app.ts
,以:
import { Observable } from 'rxjs';
Run Code Online (Sandbox Code Playgroud)
并且此行在VSCode和webpack控制台中突出显示,并显示以下错误:
Cannot find module 'rxjs'.
Run Code Online (Sandbox Code Playgroud)
但总体输出效果很好.只是这个控制台错误.
tsconfig.json
:
{
"compilerOptions": {
"target": "es2015"
},
"files": [
"src/app.ts"
]
}
Run Code Online (Sandbox Code Playgroud)
webpack.config.js
:
module.exports = {
entry: "./src/app.ts",
output: {
filename: "dist/bundle.js"
},
resolve: {
// Add '.ts' and '.tsx' as a resolvable extension.
extensions: [".webpack.js", ".web.js", ".ts", ".tsx", ".js"]
},
module: {
loaders: [
// all files with a '.ts' or '.tsx' extension will be handled by 'ts-loader'
{ test: /\.ts?$/, loader: "ts-loader" }
]
}
}
Run Code Online (Sandbox Code Playgroud)
package.json
(一切安装正确):
{
"scripts": {
"start": "./node_modules/.bin/webpack --config webpack.config.js --watch"
},
"devDependencies": {
"ts-loader": "^2.1.0",
"typescript": "^2.3.4",
"webpack": "^2.6.1",
"webpack-dev-server": "^2.4.5"
},
"dependencies": {
"bootstrap": "^3.3.7",
"rxjs": "^5.4.0"
}
}
Run Code Online (Sandbox Code Playgroud)
我找不到为什么ts/webpack不能解决的原因 rxjs
小智 14
离子
简单地使用这个命令来删除插件
npm uninstall --save rxjs
npm uninstall --save rxjs-compat
Run Code Online (Sandbox Code Playgroud)
然后运行它重新安装
npm install --save rxjs
npm install --save rxjs-compat
Run Code Online (Sandbox Code Playgroud)
Ole*_*luk 13
您应该将默认模块解析策略从Classic更改为Node.为此,请更改您的tsconfig.json
文件:
{
...
"compilerOptions": {
....
"moduleResolution": "node"
}
}
Run Code Online (Sandbox Code Playgroud)
请参阅模块分辨率的文档
您必须添加node_modules
到您的 webpackresolve.modules 配置中:
resolve: {
modules: [
"node_modules",
path.resolve(__dirname, "app")
],
extensions: [".js", ".json", ".jsx", ".css"],
}
Run Code Online (Sandbox Code Playgroud)
更多信息请参见https://webpack.js.org/configuration/resolve/