尝试使用 gh-pages 部署我的 React 应用程序,但收到此错误消息:“文件"参数必须是字符串类型.接收类型未定义 [英] Trying to deploy my React app with gh-pages but got this error message : The "file" argument must be of type string. Received type undefined

查看:27
本文介绍了尝试使用 gh-pages 部署我的 React 应用程序,但收到此错误消息:“文件"参数必须是字符串类型.接收类型未定义的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我试图用 gh-pages 部署我的 React 应用程序,但我遇到了这个错误:文件"参数必须是字符串类型.接收类型未定义.

I was trying to deploy my React app with gh-pages but I'm facing this error : The "file" argument must be of type string. Received type undefined.

起初,我以为这是我的代码,所以我制作了另一个没有修改的 create-react-app,尝试使用 npm run deploy 命令进行部署,但再次收到此错误消息.

At first, I thought it was my code so I've made another create-react-app with no modification, trying to deploy with npm run deploy command but got this error message again.

我的 package.json(我添加了我的 homepage 链接、predeploydeploy 脚本,以及 gh-页面依赖):

My package.json (I've added my homepage link, the predeploy and deploy scripts, and the gh-pages dependency) :

  "name": "test-deploy",
  "version": "0.1.0",
  "private": true,
  "homepage": "https://vnsteven.github.io/test-deploy/",
  "dependencies": {
    "gh-pages": "^2.1.0",
    "react": "^16.8.6",
    "react-dom": "^16.8.6",
    "react-scripts": "3.0.1"
  },
  "scripts": {
    "start": "react-scripts start",
    "build": "react-scripts build",
    "test": "react-scripts test",
    "eject": "react-scripts eject",
    "predeploy": "npm run build",
    "deploy": "gh-pages -d build"
  },
  "eslintConfig": {
    "extends": "react-app"
  },
  "browserslist": {
    "production": [
      ">0.2%",
      "not dead",
      "not op_mini all"
    ],
    "development": [
      "last 1 chrome version",
      "last 1 firefox version",
      "last 1 safari version"
    ]
  }
}

错误输出:

> npm run build


> test-deploy@0.1.0 build /Users/vansteven/Desktop/test-deploy
> react-scripts build

Creating an optimized production build...
Compiled successfully.

File sizes after gzip:

  36.44 KB  build/static/js/2.b41502e9.chunk.js
  770 B     build/static/js/runtime~main.90bc13d1.js
  601 B     build/static/js/main.74c1ab4e.chunk.js
  517 B     build/static/css/main.2cce8147.chunk.css

The project was built assuming it is hosted at /test-deploy/.
You can control this with the homepage field in your package.json.

The build folder is ready to be deployed.
To publish it at https://vnsteven.github.io/test-deploy/ , run:

  yarn run deploy

> test-deploy@0.1.0 deploy /Users/vansteven/Desktop/test-deploy
> gh-pages -d build

The "file" argument must be of type string. Received type undefined
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! test-deploy@0.1.0 deploy: `gh-pages -d build`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the test-deploy@0.1.0 deploy script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR! A complete log of this run can be found in:
npm ERR!     /Users/vansteven/.npm/_logs/2019-08-01T17_48_50_611Z-debug.log

le shell a retourné 1

日志:

1 verbose cli [ '/usr/local/bin/node', '/usr/local/bin/npm', 'run', 'deploy' ]
2 info using npm@6.9.0
3 info using node@v10.16.0
4 verbose run-script [ 'predeploy', 'deploy', 'postdeploy' ]
5 info lifecycle test-deploy@0.1.0~predeploy: test-deploy@0.1.0
6 verbose lifecycle test-deploy@0.1.0~predeploy: unsafe-perm in lifecycle true
7 verbose lifecycle test-deploy@0.1.0~predeploy: PATH: /usr/local/lib/node_modules/npm/node_modules/npm-lifecycle/node-gyp-bin:/Users/vansteven/Desktop/test-deploy/node_modules/.bin:/Users/vansteven/.rvm/gems/ruby-2.5.1/bin:/Users/vansteven/.rvm/gems/ruby-2.5.1@global/bin:/Users/vansteven/.rvm/rubies/ruby-2.5.1/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Users/vansteven/.rvm/bin
8 verbose lifecycle test-deploy@0.1.0~predeploy: CWD: /Users/vansteven/Desktop/test-deploy
9 silly lifecycle test-deploy@0.1.0~predeploy: Args: [ '-c', 'npm run build' ]
10 silly lifecycle test-deploy@0.1.0~predeploy: Returned: code: 0  signal: null
11 info lifecycle test-deploy@0.1.0~deploy: test-deploy@0.1.0
12 verbose lifecycle test-deploy@0.1.0~deploy: unsafe-perm in lifecycle true
13 verbose lifecycle test-deploy@0.1.0~deploy: PATH: /usr/local/lib/node_modules/npm/node_modules/npm-lifecycle/node-gyp-bin:/Users/vansteven/Desktop/test-deploy/node_modules/.bin:/Users/vansteven/.rvm/gems/ruby-2.5.1/bin:/Users/vansteven/.rvm/gems/ruby-2.5.1@global/bin:/Users/vansteven/.rvm/rubies/ruby-2.5.1/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Users/vansteven/.rvm/bin
14 verbose lifecycle test-deploy@0.1.0~deploy: CWD: /Users/vansteven/Desktop/test-deploy
15 silly lifecycle test-deploy@0.1.0~deploy: Args: [ '-c', 'gh-pages -d build' ]
16 silly lifecycle test-deploy@0.1.0~deploy: Returned: code: 1  signal: null
17 info lifecycle test-deploy@0.1.0~deploy: Failed to exec deploy script
18 verbose stack Error: test-deploy@0.1.0 deploy: `gh-pages -d build`
18 verbose stack Exit status 1
18 verbose stack     at EventEmitter.<anonymous> (/usr/local/lib/node_modules/npm/node_modules/npm-lifecycle/index.js:301:16)
18 verbose stack     at EventEmitter.emit (events.js:198:13)
18 verbose stack     at ChildProcess.<anonymous> (/usr/local/lib/node_modules/npm/node_modules/npm-lifecycle/lib/spawn.js:55:14)
18 verbose stack     at ChildProcess.emit (events.js:198:13)
18 verbose stack     at maybeClose (internal/child_process.js:982:16)
18 verbose stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:259:5)
19 verbose pkgid test-deploy@0.1.0
20 verbose cwd /Users/vansteven/Desktop/test-deploy
21 verbose Darwin 16.7.0
22 verbose argv "/usr/local/bin/node" "/usr/local/bin/npm" "run" "deploy"
23 verbose node v10.16.0
24 verbose npm  v6.9.0
25 error code ELIFECYCLE
26 error errno 1
27 error test-deploy@0.1.0 deploy: `gh-pages -d build`
27 error Exit status 1
28 error Failed at the test-deploy@0.1.0 deploy script.
28 error This is probably not a problem with npm. There is likely additional logging output above.
29 verbose exit [ 1, true ]

此错误消息来自我全新的 React 应用程序.只修改了我的package.json.

This error message comes from my brand new React application. Only my package.json has been modified.

推荐答案

似乎是 gh-pages 2.1 中的一个错误.

Seems like a bug in gh-pages 2.1.

我通过将 gh-pages 降级到 2.0 版解决了我的问题:

I solved mine by downgrading gh-pages to version 2.0:

yarn add gh-pages@2.0 -D` // or

npm install -D gh-pages@2.0

这篇关于尝试使用 gh-pages 部署我的 React 应用程序,但收到此错误消息:“文件"参数必须是字符串类型.接收类型未定义的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆