【练习代码git】:https://github.com/SmileEricXin/electronPractice.git
dev分支 提交:fea:引入VUE(非前端式引入)
【说明】:
1.因为是通过electron-forge引入,使得electron-build相关指令运行时都会报错,因此只能在调试时使用 yarn start,其他指令都会运行失败;
2.如何引入vue,是参考其他demo的。通过如下指令可create demo:‘electron-forge init my-project --template=vue’ (要装electron-forge才行)
【问题记录】:
1. 路径问题
html 的路径是 ./static/html/, 而该html加载的js路径是 ./src/renderer/。
因此html加载js的方法如下:
// index.html
<script src="../../src/renderer/vueTest.js">
vueTest.js 要import test.vue,虽然test.vue和vueTest.js在同一文件夹下,但import路径却要如下:
// vueTest.js
// 这里最初写的是 import Test from './test',但跑起来后,提示找不到test模块
// 推测原因如下:
// vueTest.js 嵌入到html后,相对路径就是html的,src/static/html 了
// 因此引入test模块,要以该路径为基准
// 这样写太麻烦了,需要优化
import Test from '../../src/renderer/test';
2.package.json 中 'config'-'forge'配置问题
如果把package.json的如下配置去掉,会报Locating Application的错误。
到目前为止,可以推断:
package.json 的 'build' 项是给 electron-builder用的;
package.json 的 'config' - 'forge' 是给 electron-forge用的;
不过也只是推断,找个时间看看源码。
"config": {
"forge": {
"make_targets": {
"win32": [
"squirrel"
],
"darwin": [
"zip"
],
"linux": [
"deb",
"rpm"
]
},
"electronPackagerConfig": {
"packageManager": "yarn"
},
"electronWinstallerConfig": {
"name": "electronvue"
},
"electronInstallerDebian": {},
"electronInstallerRedhat": {},
"github_repository": {
"owner": "",
"name": ""
},
"windowsStoreConfig": {
"packageName": "",
"name": "electronvue"
}
}
},