fetch(`https://unpkg.com/xlsx@0.18.5`)
.then((res) => {
console.log(res);
return res.blob();
})
.then((res) => {
console.log(res);
const reader = new FileReader();
reader.onload = (e) => {
console.log(e);
const pargram=e.currentTarget.result;
console.log(pargram.utils);
};
reader.readAsArrayBuffer(res);
})
.catch((err) => {
console.log(err);
});
读取不到xlsx插件啊,怎么把拿到的这个blob文件转成可读取的本地对象呢?
原来就差一点
fetch("https://unpkg.com/xlsx@0.18.5").then(res => res.blob().then(blob => {
console.log(blob);
let reader = new FileReader();
reader.readAsBinaryString(blob);
reader.onload = function (result) {
console.log(result);
eval(result.currentTarget.result);
}
}));
执行前:
可见没有XLSX
执行后:
有了插件了
LoadScript: https://github.com/tserkov/vue-plugin-load-script
用于加载和卸载脚本:
import LoadScript from 'vue-plugin-load-script';
Vue.use(LoadScript);
加载脚本:
Vue.loadScript('https://cse.google.com/cse.js?cx=007968012720720263530:10z7awj2l37')
.then(() => {
// do something after script loads
})
.catch(() => {
// do something if load fails
});
卸载脚本:
Vue.unloadScript('https://cse.google.com/cse.js?cx=007968012720720263530:10z7awj2l37')
.then(() => {
// do something after script unloads
})
.catch(() => {
// do something if unload fails
});
你为啥不试试,在你需要用的时候再使用js去创建一个script标签,src写在线的js地址,然后监听你需要的函数有没有创建成功
mounted() {
const s = document.createElement('script');
s.type = 'text/javascript';
s.src = 'https://unpkg.com/xlsx@0.18.5';
document.body.appendChild(s);
}