今天才开始学习Node.js + Electron。我很难弄清楚下面的代码出了什么问题。
在控制台中,我收到以下错误
Not allowed to load local resource: file://%24%7B__dirname%7D/index.html
这是当前正在使用的代码
const electron = require('electron')
const {app, BrowserWindow} = electron
app.on('ready', function(){
let win = new BrowserWindow({
width: 600,
height: 500
})
win.loadURL('file://${__dirname}/index.html')
win.webContents.openDevTools()
})
最佳答案
您似乎正在尝试使用ES2015功能来打印URL。这需要反引号而不是常规引号:
win.loadURL(`file://${__dirname}/index.html`)
或者,您可以只使用普通的字符串合并:
win.loadURL('file://' + __dirname + '/index.html')
更详细的说明
为了对此进行扩展,ES2015(或ES6)是JavaScript的更新规范,已被现代浏览器和Node版本采用。它增加了一些在字符串中包含变量的功能,这些功能可以称为“模板字符串”。它允许您实例化带有反引号(而不是单引号或双引号)的字符串,并允许您将变量放入由美元符号和花括号分隔的字符串中。它旨在使String连接更容易,更冗长。
您在代码中执行的操作是使用美元符号和花括号,但没有适本地实例化String以使用该功能。
查看更多here。
关于node.js - 无法加载本地文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39684470/