loadHtml 而不是 atom-shell 中的 loadUrl? (尝试用玉)
Posted
技术标签:
【中文标题】loadHtml 而不是 atom-shell 中的 loadUrl? (尝试用玉)【英文标题】:loadHtml instead of loadUrl in atom-shell? (trying to use jade) 【发布时间】:2015-02-28 14:06:45 【问题描述】:atom-shell 只有一个从 URL 加载 html 的方法
window.loadUrl('file://...')
但我想用翡翠
var html = jade.renderFile('file://...');
有没有办法在 atom-shell window
中使用编译后的 html
? loadHtml(html)
之类的东西?
我想我可以运行一个提供已编译 html 的快速服务器,但这会相当低效..
【问题讨论】:
【参考方案1】:如果是mac:
/usr/bin/open -a "/Applications/Google Chrome.app" --args 'data:text/html,<html><body><h1>title</h1><p>text</p></body></html>'
关于 URI 的详细信息
https://developer.mozilla.org/en-US/docs/Web/HTTP/data_URIs
【讨论】:
成功了,谢谢!window.loadUrl('data:text/html,' + encodeURIComponent(jade.renderFile('file://...')))
【参考方案2】:
另一种方法是将 executejavascript 函数与类似的东西一起使用
mainWindow.loadUrl('about:blank');
var s = '<DOCTYPE html><html><head><title>Written!</title></head><body><h1>Hello!</h1></body></html>';
mainWindow.webContents.executeJavaScript('document.write("' + s + '");');
【讨论】:
以上是关于loadHtml 而不是 atom-shell 中的 loadUrl? (尝试用玉)的主要内容,如果未能解决你的问题,请参考以下文章