簡體   English   中英

ELECTRON-加載包含腳本標簽的本地HTML文件

[英]ELECTRON - Load local HTML file containing a script tag

我是Node和Electron的新手,所以我可能對此不太滿意。

本質上,我想做的是創建一個具有主導航的SPA,用戶可以單擊鏈接來加載包含腳本標簽的本地HTML文件。 目前,我有一個使用fs來捕獲html文件並將其成功加載到div中的主頁,但是該檢索到的文件中的JS均不起作用。 我這樣做是因為我需要與UI交互並添加動態元素

這是我的代碼:

mainWindow.html

<script>
    document.addEventListener('DOMContentLoaded', () => {
        fs.readFile(path.join(__dirname, 'fragments/main/welcome.html'), 'utf8', (err, data) => {
            document.getElementById('content').innerHTML = data;
        });
    });
</script>

welcome.html

<section class="main-content-wide">
<h1>Welcome to my app</h1>
<p id="datetimeGreeting"></p>
<p id="funFact"></p>
<script>
    console.log('Hello world');
</script>

提前致謝。

編輯:如果有人有更好的方法或“最佳實踐”的方法,我很想聽聽。

這可能有效,請嘗試並讓我知道。

<script>
    document.addEventListener('DOMContentLoaded', () => {
        fs.readFile(path.join(__dirname, 'fragments/main/welcome.html'), 'utf8', (err, data) => {
            document.getElementById('content').innerHTML = data;
            var scripts = document.getElementById('content').getElementsByTagName("script");
            for (var i = 0; i < scripts.length; i++) {
              eval(scripts[i].innerText);
            }
        });
    });
</script>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM