问题描述
我正在为vuejs 2.6.11项目中的客户工作,我们想为css +资产提供cdn,以便根据whitemark配置应用不同的css主题。
一切正常,npm run build
可以用哈希创建一个文件css捆绑包,导出资产,删除inex.html =>中的调用,没问题。
我最近遇到的问题是,分块的css文件仍被调用(看起来是由webpack引导程序中的mini-css-extract-plugin
注入的),但我还没有找到删除这些调用的选项或其他方法轻轻地。
webpack:///webpack/bootstrap
...
// mini-css-extract-plugin CSS loading
var cssChunks = {"pages":1};
if(installedCssChunks[chunkId]) promises.push(installedCssChunks[chunkId]);
else if(installedCssChunks[chunkId] !== 0 && cssChunks[chunkId]) {
promises.push(installedCssChunks[chunkId] = new Promise(function(resolve,reject) {
var href = "css/" + ({"pages":"pages"}[chunkId]||chunkId) + "." + {"chunk-2d0b386c":"31d6cfe0","chunk-2d0c4c35":"31d6cfe0","pages":"f67ce890"}[chunkId] + ".css";
var fullhref = __webpack_require__.p + href;
var existingLinkTags = document.getElementsByTagName("link");
for(var i = 0; i < existingLinkTags.length; i++) {
var tag = existingLinkTags[i];
var dataHref = tag.getAttribute("data-href") || tag.getAttribute("href");
if(tag.rel === "stylesheet" && (dataHref === href || dataHref === fullhref)) return resolve();
}
var existingStyleTags = document.getElementsByTagName("style");
for(var i = 0; i < existingStyleTags.length; i++) {
var tag = existingStyleTags[i];
var dataHref = tag.getAttribute("data-href");
if(dataHref === href || dataHref === fullhref) return resolve();
}
var linkTag = document.createElement("link");
linkTag.rel = "stylesheet";
linkTag.type = "text/css";
linkTag.onload = resolve;
linkTag.onerror = function(event) {
var request = event && event.target && event.target.src || fullhref;
var err = new Error("Loading CSS chunk " + chunkId + " failed.\n(" + request + ")");
err.code = "CSS_CHUNK_LOAD_FAILED";
err.request = request;
delete installedCssChunks[chunkId]
linkTag.parentNode.removeChild(linkTag)
reject(err);
};
linkTag.href = fullhref;
var head = document.getElementsByTagName("head")[0];
head.appendChild(linkTag);
}).then(function() {
installedCssChunks[chunkId] = 0;
}));
}
删除pwa插件无效。
所以,如果有人有解决方案,我就接受:)
非常感谢。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)