【发布时间】:2017-11-24 20:25:59
【问题描述】:
问题
我已经成功提供了我的 React 应用程序的 index.html 文件,但是在 html 文件中替换了 <root> 的 index.js
我的第一个 React 组件没有在 ReactDOM.render 上触发。
我如何让index.js 文件启动? 如果我对提供 React 应用程序的理解在某些方面存在偏差,我会大大
感谢您的澄清。
文件夹结构
- / - 包含所有服务器端文件,包括
server.js - /client/ - 包含所有 React 文件
- /client/build/ - 包含所有生产就绪的客户端文件
- /client/build/
index.html - /client/build/static/js/
main.[hash].js- 似乎是index.js的缩小版本,其中包含ReactDOM.renderfor 我的 React 应用
- /client/build/
当前部署
- 我正在为 /client/ 目录使用 Facebook 的 create-react-app,包括 npm run build 以自动填充 /client/build/
文件片段
// server.js
let app = express();
app.use(express.static(path.join(__dirname, '../client/public')));
这成功加载了由提供的默认 index.html 创建反应应用程序
// index.html
<body>
<noscript>
You need to enable JavaScript to run this app.
</noscript>
<div id="root"></div>
</body>
上面的代码部分可能/可能没有用,但它是默认的
create-react-app 附带的 html 文件。我需要更换
带有引用缩小的 index.js 的脚本标记的 noscript 标记
文件?我已经尝试过了,没有任何改变,但也许是
因为不正确的相对路径制作。
【问题讨论】:
标签: reactjs express static server create-react-app