vue3+ts import引入第三方j(luò)s文件報(bào)錯(cuò)解決方法
報(bào)錯(cuò)原因:執(zhí)行 import XXX from ‘XXX.js’ 報(bào)錯(cuò),The requested module ‘xxx.js’ does not provide an export named ‘default’ 可能是第三方文件不支持模塊化標(biāo)準(zhǔn),不能按需導(dǎo)入
解決方案:
第一種方法:
在index.html里利用script全局引入文章來源:http://www.zghlxwxcb.cn/news/detail-569198.html
<script type="text/javascript" src="xxx.js"></script>
第二種方法:
在所需的.vue文件里單獨(dú)引入,最后在head標(biāo)簽里生成js和css,離開頁面時(shí)移除文章來源地址http://www.zghlxwxcb.cn/news/detail-569198.html
//移除js或者css
function removejscssfile(filename,filetype){
let targetelement = (filetype === "js")? "script" :(filetype === "css")? "link" : "none";
let targetattr = (filetype === "js")?"src" : (filetype === "css")? "href" :"none";
let allsuspects = document.getElementsByTagName(targetelement);
for (let i = allsuspects.length; i >= 0; i--){
if (allsuspects[i] && allsuspects[i].getAttribute(targetattr) != null && allsuspects[i].getAttribute(targetattr).indexOf(filename)!= -1)
allsuspects[i].parentNode.removeChild(allsuspects[i])
}
}
//加載js或者css
function loadjscssfile(filename, filetype){
if (filetype === "js"){
var fileref = document.createElement('script');
fileref.setAttribute("type","text/javascript");
fileref.setAttribute("src",filename);
} else if (filetype === "css"){
var fileref = document.createElement("link");
fileref.setAttribute("rel","stylesheet");
fileref.setAttribute("type","text/css");
fileref.setAttribute("href",filename);
}
if (typeof fileref != "undefined") {
document.getElementsByTagName("head")[0].appendChild(fileref);
}
}
//在vue鉤子里執(zhí)行
onBeforeMount(()=> {
loadjscssfile("mystyle.css", "css")
loadjscssfile("xxx.js?" + Math.random(), "js");
})
//銷毀
onUnmounted(()=>{
removejscssfile("mystyle.css", "css");
removejscssfile("xxx.js", "js");
})
到了這里,關(guān)于vue3+ts import引入第三方j(luò)s文件報(bào)錯(cuò)解決方法的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!