我知道有一种加载html页面的方法
win.loadURL("index.html");
但是,我可以加载一个html页面,当它不是来自文件时,只是由javascript动态生成吗?
例如:
str = generateHtmlPage();
win.loadstr(str); // just load from a string
答案 0 :(得分:0)
Javascript使用DOM(文档对象模型)与HTML文件进行交互。并作为解析页面的一部分执行。从逻辑上讲,您可以使用附加到html页面构建整个页面。
document.write("Build my page here.");
但是这个解决方案看起来很麻烦,不是一个明智的解决方案。也许,编辑您的问题以确定您的目标,我或许可以帮助您找到合适的解决方案。
答案 1 :(得分:0)
[timo]用[dannvix]的要点回答了我的问题:
https://gist.github.com/dannvix/dc0efdbb75bf79a79d1c#file-electron-main-js-L21-L27
这是代码:
// main.js for Electron
var app = require("app"),
BrowserWindow = require("browser-window");
app.on("window-all-closed", function() {
app.quit();
})
var mainWindow = null;
app.on("ready", function() {
mainWindow = new BrowserWindow({
width: 800,
height: 600,
center: true,
resizable: true,
frame: true,
transparent: false,
});
mainWindow.setMenu(null);
// create BrowserWindow with dynamic HTML content
var html = [
"<body>",
"<h1>It works</h1>",
"</body>",
].join("");
mainWindow.loadUrl("data:text/html;charset=utf-8," + encodeURI(html));
mainWindow.openDevTools();
mainWindow.on("closed", function() {
mainWindow = null;
});
});