vue+Electron 异步组件报错?
// index.ts
const { ipcRenderer } = window.require("electron");
const Extensions = {
install: function(Vue:any):void{
const rs: object[] = ipcRenderer.sendSync("getExtensionsList");
const extensionsList: object[] = rs.filter(item => {
return (item as any).name.toLowerCase().indexOf("layout_") !== -1;
});
extensionsList.map(extensions => {
const name = (extensions as any).name;
// 运行报错
try{
import(`root/Extensions/${name}/index.vue`).then(res=>{
console.log(">>>",res)
})
}catch(e){
console.log(e)
}
})
}
}
export default Extensions
main.ts
引入
import Extensions from "@/components/load-extensions"
Vue.use(Extensions);
以上是异步加载组件的代码,但生成exe后运行时报错:
Uncaught (in promise) Error: Cannot find module './Layout_Demo/index.vue
项目结构:
win-unpacked
|—— Extensions
| |—— Layout_Demo
| |—— index.vue
|—— demo.exe
|—— 其他略
我的目的是制作一个本地的插件系统,不提交npm,直接封装成zip包放到插件目录(此处为Extensions)就可以使用,问题是不知道该怎么引入并注册插件……
希望了解这方面知识的大佬指点一二,谢谢
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论