使用Webpack 4.41的CSS链接标签

使用Webpack 4.41的CSS链接标签,css,reactjs,webpack,webpack-4,webpack-style-loader,Css,Reactjs,Webpack,Webpack 4,Webpack Style Loader,我已经使用Create React App创建了一个基本应用程序。我在网上冲浪时遇到了将链接标签加载到HTML的不同方法 目前,WebPack正在创建链接标记,如下所示: <link href="styles.css" rel="stylesheet"> 但我希望链接标记以不同的形式呈现,例如: <link rel="preload" href="styles.css" as="style"> <noscript><link rel="styles

我已经使用
Create React App
创建了一个基本应用程序。我在网上冲浪时遇到了将链接标签加载到HTML的不同方法

目前,WebPack正在创建链接标记,如下所示:

<link href="styles.css" rel="stylesheet">

但我希望链接标记以不同的形式呈现,例如:

<link rel="preload" href="styles.css" as="style">
<noscript><link rel="stylesheet" href="styles.css"></noscript>


有什么方法可以实现吗?

如果您使用
创建react app
构建项目,那么您将找不到可定制的
webpack.config.js
(有一种方法,但它由
react脚本处理)

,它们不允许定制插件以最小化潜在问题

因此,如果您想将插件添加到使用
createreact-app
引导的react应用程序中。您必须运行
npm run eject
,这将使所有配置文件都可用于手动自定义

弹出项目后,可以使用
preload Webpack plugin
为Webpack预加载资源。细节

基本示例
webpack.config.js

plugins: [
  new HtmlWebpackPlugin({
    title: 'My Cool App',
    template: './app/index.html'
  }),
  new PreloadWebpackPlugin()
]

这将为您自动预加载资产和依赖项。其他用法详细信息

获取错误,因为无法在“html处理前的html网页包插件”中注册
插件。找不到挂钩。
我正在使用
“预加载网页包插件”:“^2.3.0”
。我检查了升级到
3.0.0-beta.3
的解决方案,但升级到该解决方案后,链接标签保持不变。因为您是使用
create react app
启动项目的,所以网页包配置由
react scripts
处理。看一看,看起来,这可能就是你想要的。我已经退出了这个项目。此外,他们正在使用我没有使用的
react app rewired
。我正在直接使用
create react app
。最重要的是,我不太确定添加
copywebpack插件
在这种情况下有什么帮助。