在我的反应 js 项目中运行 npm start 时出现白屏

Posted

技术标签:

【中文标题】在我的反应 js 项目中运行 npm start 时出现白屏【英文标题】:Getting white screen on running npm start in my react js project 【发布时间】:2020-12-23 09:11:02 【问题描述】:

So is <strictmode causing this problem ???2我在尝试运行 npm start 时出现白屏。 npm start 有效,但我在 http://localhost:3000/ 上出现白屏。我试图将 "homepage": ".", 添加到我的 index.html 文件中,但我仍然收到相同的错误?你能告诉我我在哪里做错了吗?我也尝试通过谷歌控制台调试它,但它什么也没显示。

index.html file:
<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="utf-8" />
    <link rel="stylesheet" href=" https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css">
    <link rel="stylesheet" href="https://unpkg.com/purecss@2.0.3/build/grids-responsive-min.css">
    <link rel="icon" href="%PUBLIC_URL%/favicon.ico" />
    <meta name="viewport" content="width=device-width, initial-scale=1" />
    <meta name="theme-color" content="#000000" />
    <meta
      name="description"
      content="Web site created using create-react-app"
    />
    <link rel="apple-touch-icon" href="%PUBLIC_URL%/logo192.png" />
    <!--
      manifest.json provides metadata used when your web app is installed on a
      user's mobile device or desktop. See https://developers.google.com/web/fundamentals/web-app-manifest/
    -->
    <link rel="manifest" href="%PUBLIC_URL%/manifest.json" />
    <!--
      Notice the use of %PUBLIC_URL% in the tags above.
      It will be replaced with the URL of the `public` folder during the build.
      Only files inside the `public` folder can be referenced from the HTML.

      Unlike "/favicon.ico" or "favicon.ico", "%PUBLIC_URL%/favicon.ico" will
      work correctly both with client-side routing and a non-root public URL.
      Learn how to configure a non-root public URL by running `npm run build`.
    -->
    <title>React App</title>
  </head>
  <body>
    <noscript>You need to enable javascript to run this app.</noscript>
    <div id="root"></div>
    <!--
      This HTML file is a template.
      If you open it directly in the browser, you will see an empty page.

      You can add webfonts, meta tags, or analytics to this file.
      The build step will place the bundled scripts into the <body> tag.

      To begin the development, run `npm start` or `yarn start`.
      To create a production bundle, use `npm run build` or `yarn build`.
    -->
  </body>
</html>

**package.json file** 

    
      "name": "chatapp",
      "version": "0.1.0",
      "homepage": ".",
      "private": true,
      "dependencies": 
        "@testing-library/jest-dom": "^4.2.4",
        "@testing-library/react": "^9.3.2",
        "@testing-library/user-event": "^7.1.2",
        "firebase": "^7.19.1",
        "font-awesome": "^4.7.0",
        
        "react": "^16.13.1",
        "react-dom": "^16.13.1",
        "react-loading": "^2.0.3",
        "react-router-dom": "^5.2.0",
        "react-scripts": "3.4.3",
        "react-toastify": "^6.0.8"
      ,
      "scripts": 
        "start": "react-scripts start",
        "build": "react-scripts build",
        "test": "react-scripts test",
        
        "eject": "react-scripts eject"
      ,
      "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"
        ]
      
    

【问题讨论】:

您等待它加载多长时间? 您的图像显示它仍在连接中。启动服务器并为浏览器构建代码需要一些时间。 @Shivangi,我刚刚检查过了。它对我来说很好。如果仍然不适合您,您能否提供更多详细信息? 您可能想检查终端上的状态,如果它显示“正在启动开发服务器”,它仍在编译,所以等待一段时间,如果它显示“编译成功”但它仍然没有显示任何内容,我们可能会帮助您 【参考方案1】:

这将修复错误。

命令

npm install chalk

【讨论】:

【参考方案2】:

我尝试了您的代码,但它给了我快速响应。我创建了新文件意味着在你的 index.js 中更改代码:

代码:

import React from 'react';
import ReactDOM from 'react-dom';
ReactDOM.render(
<>hello</>,
document.getElementById('root')
);

然后查看响应时间。

【讨论】:

我尝试更改它并且它工作正常但是当我调用 组件时,它给出了错误。是因为 标签吗?ReactDOM.render( , document.getElementById('root') ); StrictMode 是一种用于突出显示应用程序中潜在问题的工具。所以你能不能把app.js的代码分享给我,这样很容易找到解决方案。 嗨,我已经解决了。显然我在 html 组件中使用了类名,这就是它没有在屏幕上呈现 html 组件的原因。

以上是关于在我的反应 js 项目中运行 npm start 时出现白屏的主要内容,如果未能解决你的问题,请参考以下文章

npm start 不运行反应项目

我无法使用 npm start 运行反应应用程序如何解决此错误?

第一个 Expo 项目在 npm start 后抛出错误

sh:SET:在`npm start`中找不到命令

运行 npm start 一直显示错误

Visual Studio Code Node.js 在运行 npm start 命令时在 Mac 中给出权限被拒绝错误