web-dev-qa-db-ja.com

解決できませんTypeScript / webpack内でモジュール 'rxjs'が見つかりません

rxjsを単純なwebpackセットアップに(アンギュラーなしで)ロードする問題があります。私は走っています:

./node_modules/.bin/webpack --config webpack.config.js --watch

webpackを起動します。アプリの唯一のファイル、src/app.ts、次で始まる:

import { Observable } from 'rxjs';

この行はVSCodeおよびwebpackコンソールで次のエラーとともに強調表示されます。

Cannot find module 'rxjs'.

ただし、全体的な出力は正常に機能します。このコンソールエラーだけです。

tsconfig.json

{
    "compilerOptions": {
         "target": "es2015"
    },
    "files": [
        "src/app.ts"
    ]
}

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" }
        ]
    }
}

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"
  }
}

rxjsがどこにあるのかをts/webpackが解決できない理由を見つけることができません

9
ducin

デフォルトのモジュール解決戦略をクラシックからノードに変更する必要があります。これを行うには、tsconfig.jsonファイル:

{
    ...
    "compilerOptions": {
        ....
        "moduleResolution": "node"
    }
}

モジュール解像度 のドキュメントを参照してください

12
Oles Savluk

イオンへ

プラグインを削除するには、このコマンドを使用します

npm uninstall --save rxjs

npm uninstall --save rxjs-compat

そして、これを実行して再インストールします

npm install --save rxjs

npm install --save rxjs-compat
3
Infoideas 2021

node_modulesをwebpack resolve.modules構成に追加する必要があります。

 resolve: {
    modules: [
      "node_modules",
      path.resolve(__dirname, "app")
    ],
    extensions: [".js", ".json", ".jsx", ".css"],
 }

https://webpack.js.org/configuration/resolve/ の詳細

0
enapupe