diff --git a/src/core/v3.ts b/src/core/v3.ts
index dae26a3..b29c559 100644
--- a/src/core/v3.ts
+++ b/src/core/v3.ts
@@ -17,7 +17,8 @@ export class PluginForHtmlWebpackPluginV3 extends BasePlugin {
private process(data: HtmlWebpackPluginData) {
// check if current html needs to be inlined
if (this.isCurrentFileNeedsToBeInlined(data.outputName)) {
- data.assets.css.forEach((cssLink, index) => {
+ const [...cssAssets] = data.assets.css
+ cssAssets.forEach(cssLink => {
const style = this.getCSSStyle({
cssLink,
publicPath: data.assets.publicPath,
@@ -30,8 +31,11 @@ export class PluginForHtmlWebpackPluginV3 extends BasePlugin {
style: style,
})
+ const cssLinkIndex = data.assets.css.indexOf(cssLink)
// prevent generate tag
- data.assets.css.splice(index, 1)
+ if (cssLinkIndex !== -1) {
+ data.assets.css.splice(cssLinkIndex, 1)
+ }
}
})
diff --git a/src/core/v4.ts b/src/core/v4.ts
index 6adcd79..7bf16a4 100644
--- a/src/core/v4.ts
+++ b/src/core/v4.ts
@@ -32,7 +32,8 @@ export class PluginForHtmlWebpackPluginV4 extends BasePlugin {
private cssStyleMap: Map = new Map()
private prepareCSSStyle(data: BeforeAssetTagGenerationData) {
- data.assets.css.forEach((cssLink, index) => {
+ const [...cssAssets] = data.assets.css
+ cssAssets.forEach(cssLink => {
if (this.isCurrentFileNeedsToBeInlined(cssLink)) {
const style = this.getCSSStyle({
cssLink,
@@ -45,9 +46,11 @@ export class PluginForHtmlWebpackPluginV4 extends BasePlugin {
} else {
this.cssStyleMap.set(data.plugin, [style])
}
-
+ const cssLinkIndex = data.assets.css.indexOf(cssLink)
// prevent generate tag
- data.assets.css.splice(index, 1)
+ if (cssLinkIndex !== -1) {
+ data.assets.css.splice(cssLinkIndex, 1)
+ }
}
}
})