我目前正在尝试实施本教程:
https://www.typescriptlang.org/docs/handbook/react-&-webpack.html
我应该安装react
和react-dom
以及webpack
+ typescript
+ awesome-typescript-loader
+ source-map-loader
,这就是我的安装做到了。我还根据从命令行获得的说明安装了webpack-cli
。
我在本地安装了所有软件包(react
和react-dom
作为PROD,其余作为DEV依赖项。当前我没有在全球安装任何软件包。
之后,这就是我的package.json
文件:
{
"name": "reactandwebpack-tutorial",
"version": "1.0.0",
"description": "",
"main": "webpack.config.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"author": "",
"license": "ISC",
"devDependencies": {
"awesome-typescript-loader": "^5.2.0",
"source-map-loader": "^0.2.3",
"typescript": "^2.7.2",
"webpack": "^4.16.4",
"webpack-cli": "^3.1.0"
},
"dependencies": {
"@types/react": "^16.4.7",
"@types/react-dom": "^16.0.6",
"react": "^16.4.2",
"react-dom": "^16.4.2"
}
}
在这一点上,当我运行npm ls
时,由于一堆可选的webpack依赖关系而明显丢失(树中的所有错误都在webpack
内和{ {1}}如下:
fsevents
当我运行webpack@4.16.4
(...)watchpack@1.6.0
(...)chokidar@2.0.4
(...)fsevents@1.2.4 -> UNMET OPTIONAL DEPENDENCY
And everything below fsevents is also marked with UNMET DEPENDENCY
命令时,出现“未识别Webpack错误”。
任何人都可以帮忙吗?我一直在想办法解决这个问题。
PS:
webpack
答案 0 :(得分:0)
已解决
不确定原因,但与./bin文件夹有关,但webpack-cli“环境变量”不可用(我不知道这是最准确的描述)。
当我尝试运行webpack
时,出现“无法识别的错误”。
但是当我运行nodemodules\.bin\webpack-cli
时,它可以正常工作。
所有内容均在本地安装。
我还可以使用诸如nodemodules\.bin\webpack-cli --help
答案 1 :(得分:0)
原因是因为它未链接到您的环境。在全局安装某些内容时,您可以在任何地方访问它,因此仅需执行webpack
就可以使用它。由于您在本地安装了所有内容,因此二进制文件位于node_modules/.bin
内部。
在本地安装某些组件时,有两个选择。
./node_modules/.bin/moduleName --flags
创建npm脚本并在其中添加所有命令更加容易。
答案 2 :(得分:0)
如果运行“ webpack”,则CLI会找到(npm install webpack -g)安装的全局webpack。要使用本地项目中的webpack。您应该使用npm脚本。
package.json
{
"script": {
"start": "webpack"
}
}
这样做,您可以运行 npm start 来运行webpack。