[英]spawn babel-node ENOENT
我正在從頭開始用yarn
而不是npm
建造一個反應應用,因為紗線比npm快。 我沒有使用create-react-app
命令創建我的反應應用程序,只是為了確保我從頭開始做所有事情。
我有一個webpack文件,其中包含從webpack站點復制的基本配置代碼段。
請參閱我使用babel-node
來運行我的項目,因為我在節點server.js
文件中import
了ES6。
在下面的文件中,告訴pm2
使用babel-node
而不是常規node
,使用解釋器
{
"name": "advanced-react",
"version": "1.0.0",
"main": "lib/server.js",
"author": "GopiGorantala",
"license": "MIT",
"scripts": {
"dev": "pm2 start lib/server.js --watch --interpreter babel-node"
},
"babel": {
"presets": [
"react",
"env",
"stage-2"
]
},
"devDependencies": {
"babel-eslint": "^10.0.1",
"eslint": "^5.13.0",
"eslint-plugin-react": "^7.12.4"
},
"dependencies": {
"babel-preset-env": "^1.7.0",
"babel-preset-react": "^6.24.1",
"babel-preset-stage-2": "^6.24.1",
"ejs": "^2.6.1",
"express": "^4.16.4",
"pm2": "^3.2.9"
}
}
import express from 'express';
import config from './config';
const app = express();
app.use(express.static('public'));
app.set('view engine', 'ejs');
app.get('/', (req, res) => {
res.render('index', {answer: 42});
});
app.listen(config.port, function listenHandler() {
console.info(`running on ${config.port}`);
});
當我使用yarn dev
運行我的應用程序時,我沒有將服務器作為在線,而是我得到了errored
我試圖用yarn pm2 logs
,但我沒有得到太多信息..請參閱下面的截圖
注意:請參閱,我使用yarn add --dev
命令添加我的包
問題:我收到了spawn babel-node ENOENT
錯誤。 我怎樣才能確保我不碰到這個。
並非所有webpack配置都適用於jsx。 WP應該看起來像這樣。
module.exports = {
entry: './src/index.js',
module: {
rules: [
{
test: /\.(js|jsx)$/,
exclude: /node_modules/,
use: ['babel-loader']
}
]
},
resolve: {
extensions: ['*', '.js', '.jsx']
},
output: {
path: __dirname + '/dist',
publicPath: '/',
filename: 'bundle.js'
},
devServer: {
contentBase: './dist'
}
};
如果您使用的是最新的babel(^ 7.0.0),您應該以這種方式安裝'babel-node':
sudo npm i -g @babel/node
不要通過這種方式安裝,因為它只適用於babel 6:
npm install -g babel-cli
文檔看起來過時,適合babel 6版本。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.