1 回答

TA貢獻1784條經驗 獲得超7個贊
為了獲得從暴露給 eel 的 python 函數發送的結果,javascript 函數display應該成為異步函數,并且我們應該等待來自 python 函數的結果。
因此,顯示函數變為:
<script type="text/javascript">
async function display() {
var res=await eel.some_func()();
for (var i = 0; i <= document.getElementsByClassName('block__les').length ; i++) {
document.getElementsByClassName('block__les')[i].innerHTML = res[i];
}
}
display();
</script>
還有一點需要提到,但與 'block__les' 無關eel,在display函數中,'block__les'.length并沒有給出 'block__les' 類的項目數,但它給出了單詞 的字符數block__les,即10。
為了排序 'block__les' 類的項目數量,我們可以使用document.getElementsByClassName('block__les').length,它給出8,正確的數字。
當然,別忘了放
<script type="text/javascript" src="/eel.js"></script>
在頭部部分main.html
最后不要忘記更改:
result = ['elems', 'elems', 'elems', 'elems', 'elems', 'elems']
變為 8 個項目,以匹配 HTML 中顯示的項目數。
result = ['elems', 'elems', 'elems', 'elems', 'elems', 'elems', 'elems', 'elems']
添加回答
舉報