首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >React:如何将启动文件index.html更改为start_url of manifest.json中的其他html页面

React:如何将启动文件index.html更改为start_url of manifest.json中的其他html页面
EN

Stack Overflow用户
提问于 2019-10-03 07:45:57
回答 1查看 4.1K关注 0票数 1

在React中,我需要将起始页面index.html更改为其他html页面(例如: person.html作为声明页)。我已经在公用文件夹中创建了person.html页面,并在manifest.json中进行了更改并尝试了。但它仍然把index.html作为优先事项。

manifest.json:

代码语言:javascript
复制
{

  "short_name": "React App",

  "name": "Create React App Sample",

  "icons": [

    {

      "src": "favicon.ico",

      "sizes": "64x64 32x32 24x24 16x16",

      "type": "image/x-icon"

    }

  ],

  "start_url": "./person.html", //here i have changed and tried

  "display": "standalone",

  "theme_color": "#000000",

  "background_color": "#ffffff"

}

我期待的结果在呈现时,它不应该运行index.html,应该采取其他的html页面。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-10-03 07:54:13

假设您使用来创建react应用程序,那么您需要弹出该项目才能重命名它。一旦项目被弹出,您可以手动配置webpack、babel和所有其他依赖项。您将需要深入webpack的设置,以改变这一点。

没有弹射,就没有别的办法。请小心,因为你无法解开它。

首先,您需要运行:

代码语言:javascript
复制
npm run eject

在webpack.config.prod.js中,将文件名更改为:

代码语言:javascript
复制
new HtmlWebpackPlugin({ inject: true, template: paths.appHtml, filename: 'person.html', ...)

您可以在这里阅读更多内容:https://github.com/facebook/create-react-app/issues/1761

编辑:

看起来webpack的配置在更新的创建-反应-应用程序版本中发生了变化。下面是你现在的做法:

第一次弹射。然后打开配置文件夹中的paths.js,并更改module.exports中的appHtml属性。

下面是为您修改的导出对象:

代码语言:javascript
复制
module.exports = {
  dotenv: resolveApp('.env'),
  appPath: resolveApp('.'),
  appBuild: resolveApp('build'),
  appPublic: resolveApp('public'),
  appHtml: resolveApp('public/person.html'),  //Change only this line
  appIndexJs: resolveModule(resolveApp, 'src/index'),
  appPackageJson: resolveApp('package.json'),
  appSrc: resolveApp('src'),
  appTsConfig: resolveApp('tsconfig.json'),
  appJsConfig: resolveApp('jsconfig.json'),
  yarnLockFile: resolveApp('yarn.lock'),
  testsSetup: resolveModule(resolveApp, 'src/setupTests'),
  proxySetup: resolveApp('src/setupProxy.js'),
  appNodeModules: resolveApp('node_modules'),
  publicUrl: getPublicUrl(resolveApp('package.json')),
  servedPath: getServedPath(resolveApp('package.json')),
};
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58214552

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档