Electron Builder:不允许加载本地资源:app.asar / build / index.html

时间:2017-07-10 21:43:14

标签: javascript reactjs electron electron-builder

使用电子构建器时遇到问题我在控制台中出现空白页和错误:

Not allowed to load local resource: file:///C:/Users/emretekince/Desktop/DCSLogBook/client/dist/win-unpacked/resources/app.asar/build/index.html

main.js

const startUrl = process.env.ELECTRON_START_URL || url.format({
        pathname: path.join(__dirname, '/build/index.html'),
        protocol: 'file:',
        slashes: true
    });
mainWindow.loadURL(startUrl);

5 个答案:

答案 0 :(得分:5)

通过在package.json

中添加“files”来解决
"files": [
  "*.js",
  "build",
  "node_modules"
],

答案 1 :(得分:1)

我遇到了同样的问题,并设法使用以下方法对其进行了解决:

path.resolve('index.html')

像这样:

const startUrl = path.resolve('index.html'); mainWindow.loadURL(startUrl);

答案 2 :(得分:1)

我认为您的index.html文件不在您指定的位置。 __dirname, '/build/index.html'

我错过了这个愚蠢的观点,浪费了很多时间。 Angular-cli在dist中的文件夹内为index.html创建默认位置。

dist/project-name/index.html

答案 3 :(得分:0)

在加载文件之前,我也遇到了同样的问题。

 window.webContents.openDevTools()

示例代码

// Issue code
window =  new BrowserWindow({width:800,height:600,parent:mainWindow})
window.webContents.openDevTools()
window.loadURL(url.format({
    pathname: path.join(__dirname,'/../views/file.html'),
    protocol: 'file',
    slashes: true
}))

// Issue Solved code
window =  new BrowserWindow({width:800,height:600,parent:mainWindow})

window.loadURL(url.format({
    pathname: path.join(__dirname,'/../views/file.html'),
    protocol: 'file',
    slashes: true
}))
window.webContents.openDevTools()

答案 4 :(得分:0)

我一整天都在尝试解决此问题,最终找到了解决方法,

"build": {
"appId": "myledgerapp",
"extends": null,
"files": [
  "./build/**/*",
  "./public/electron.js"
]}

我们需要在build部分添加文件,其中electro.js是我的入口点。