我对Electron很新,所以这可能是一个愚蠢的问题,但是:我的应用程序使用多个窗口,所以我很自然地希望实现一个(非常)基本的模板引擎来避免重新创建页面'每页上的页眉和页脚。所以我这样做了:
function setWindowContent(template)
{
FileSystem.readFile(path.resolve(__dirname, 'layout.html'), 'utf-8', function(error, layoutCode){
if (!error) {
FileSystem.readFile(path.resolve(__dirname, template+'.html'), 'utf-8', function(error, content){
if (!error){
content = layoutCode.replace('{{main_content}}', content);
mainWindow.webContents.loadURL('data:text/html,' + content);
}
});
}
});
}
它有效,但由于某种原因,我不能包含任何css或js文件,它只是无法找到它们。 "要求"语句工作,虽然路径因为范围很长。所以这有效:
<script>window.$ = window.jQuery = require('./../../../../../../js/jquery-2.2.1.min.js');</script>
但这并不是:
<link href="./css/style.css" rel='stylesheet' type='text/css' />
以及:
<link href="./../../../../../../css/style.css" rel='stylesheet' type='text/css' />
任何提示? 另外,在阅读内容后,是否需要以某种方式关闭文件指针,还是自动完成?
app文件夹如下所示:
├── css/
│ └── style.css
├── js/
├── node_modules/
├── main.js
├── package.json
├── layout.html
├── index.html
我没有列出&#34; node_modules&#34;的内容。文件夹,因为它需要几页,因为它是通过npm install在本地安装的。