【问题标题】:React Dist Without Server, Node or Http-server没有服务器、节点或 Http-server 的 React Dist
【发布时间】:2018-04-06 14:53:05
【问题描述】:

我有一个简单的 React 应用程序,它使用 webpack 来制作生产 dist,但是当我打开 index.html 时,它只是一个空白页面。 我尝试干预 webpack 配置,寻找可能的原因,但我完全失败了。

我需要创建一个 dist 并能够仅使用静态文件而不是服务器来运行应用程序,这可能吗?还是我真的需要一个 http 服务器或节点来提供文件或模块,即使在编译完所有内容之后?

webpack.config.js

'use strict';

/* eslint no-console: "off" */
const webpackConfigs = require('./conf/webpack');
const defaultConfig = 'dev';

module.exports = (configName) => {

  // If there was no configuration give, assume default
  const requestedConfig = configName || defaultConfig;

  // Return a new instance of the webpack config
  // or the default one if it cannot be found.
  let LoadedConfig = defaultConfig;

  if (webpackConfigs[requestedConfig] !== undefined) {
    LoadedConfig = webpackConfigs[requestedConfig];
  } else {
    console.warn(`
      Provided environment "${configName}" was not found.
      Please use one of the following ones:
      ${Object.keys(webpackConfigs).join(' ')}
    `);
    LoadedConfig = webpackConfigs[defaultConfig];
  }

  const loadedInstance = new LoadedConfig();

  // Set the global environment
  process.env.NODE_ENV = loadedInstance.env;

  return loadedInstance.config;
};

【问题讨论】:

  • 如果不查看整个源代码,很难判断出什么问题。这可能根本不是 webpack 的问题。让事情运行的最简单方法是使用create-react-app,然后根据您已有的项目进行调整。您将拥有一个可用于生产的静态包。

标签: javascript node.js reactjs webpack redux


【解决方案1】:

可以在 S3(和其他)上托管您的应用:

https://medium.com/@omgwtfmarc/deploying-create-react-app-to-s3-or-cloudfront-48dae4ce0af

对于不同的部署策略,您可以查看CRA readme

【讨论】:

  • 问题是我的 index.html 没有显示我的应用程序,运行 dist 后它是空白的。 app.js 似乎除了在那里之外什么也没做。
  • 如果你想在本地尝试你可以这样做:serve -s distsee
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-03-20
  • 2021-02-07
  • 1970-01-01
  • 1970-01-01
  • 2020-05-27
  • 1970-01-01
相关资源
最近更新 更多