electron 如何解决路径问题
electron 的 index.html文件中加入资源引用,比如src="/assets/index.f2932f37.js"
就会到磁盘根目录中获取D:\assets\index.f2932f37.js
,怎么指定到.html
文件所在的目录去查找,类似'/assets/index.f2932f37.js'?也就是如何指定根目录?
function createWindow () {
const win = new BrowserWindow({
width: 800,
height: 600,
webPreferences: {
preload: path.join(__dirname, 'preload.js')
}
})
win.loadFile('./dist/index.html')
}
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Vite App</title>
<script type="module" crossorigin src="/assets/index.f2932f37.js"></script>
<link rel="modulepreload" href="/assets/vendor.a5e6f6e0.js">
<link rel="stylesheet" href="/assets/index.3714cd5a.css">
</head>
<body>
<div id="app"></div>
</body>
</html>
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
看一下 'preload.js'的路径,参考这个路径的书写方式:
win.loadFile(path.join(__dirname, 'index.html'))
你可以看一下打包之后的 index.html 和 preload.js是不是在同级目录,如果不是就按照他们的相对路径调整一下
/assets/index.f2932f37.js
html引入的资源使用了绝对路径, 你用相对路径调整一下试试
一般在项目中都是使用相对路径的,特别是html文件中,最好采用
./assets/XXXX
这样的相对路径写法,这样不容易出错。