我正在尝试将我的反应应用程序部署到github页面。每次我跑" npm run deploy"我收到这个错误:
ENOENT: no such file or directory, stat '/Users/username/my-app/build'
npm ERR! Darwin 16.3.0
npm ERR! argv "/usr/local/bin/node" "/usr/local/bin/npm" "run" "deploy"
npm ERR! node v6.11.0
npm ERR! npm v3.10.10
npm ERR! code ELIFECYCLE
npm ERR! reactdemo@1.0.0 deploy: `gh-pages -d build`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the reactdemo@1.0.0 deploy script 'gh-pages -d build'.
npm ERR! Make sure you have the latest version of node.js and npm installed.
npm ERR! If you do, this is most likely a problem with the reactdemo package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR! gh-pages -d build
npm ERR! You can get information on how to open an issue for this project with:
npm ERR! npm bugs reactdemo
npm ERR! Or if that isn't available, you can get their info via:
npm ERR! npm owner ls reactdemo
npm ERR! There is likely additional logging output above.
这是我的package.json脚本
"scripts": {
"compile": "webpack",
"test": "echo \"Error: no test specified\" && exit 1",
"build": "webpack --config webpack.config.js",
"predeploy": "npm run build",
"deploy": "gh-pages -d build"
},
Webpack.config.js
const path = require('path');
module.exports = {
context: path.join(__dirname, 'src'),
entry: [
'./main.js',
],
output: {
path: path.join(__dirname, 'www'),
filename: 'bundle.js',
},
module: {
rules: [
{
test: /\.js$/,
exclude: /node_modules/,
use: [
'babel-loader',
],
},
],
},
resolve: {
modules: [
path.join(__dirname, 'node_modules'),
],
},
};
我猜它与我的构建脚本的编写方式有关。正在运行" npm run build"工作正常。
编辑:添加了webpack配置
答案 0 :(得分:3)
命令gh-pages -d build
将部署build
目录中的所有内容。但是,您不使用build
目录作为捆绑包,而是使用www
目录。
将命令更改为gh-pages -d www
。