问题描述
我有一个使用 WebEngineView 的 QtQuick 浏览器。
我想在加载普通脚本之前执行一些 JS 代码,在 window
中设置一个变量,以便普通脚本在执行时可以获取它。
我尝试过这样的事情:
WebEngineView {
id: webview
width: appContainer.width
url: appContainer.pathUrl
height: appContainer.height
onLoadingChanged: {
console.log('onLoadingChanged');
webview.runJavaScript("window.someVariable = true");
}
}
我可以看到几次“onLoadingChanged”日志,并且变量设置正确。但是,我正在启动一个非常简单的 Vue 应用程序,其中包含一个简单的静态组件,我尝试检查它的 mounted
回调中的变量:
mounted: function() {
console.log(window.someVariable);
setInterval(function() { console.log(window.someVariable); },1000);
}
第一个控制台日志打印 undefined
,但下一个间隔刻度打印 true
。所以变量设置正确,但它是在初始页面加载之后(甚至在 DOMContentLoaded
之后)
有没有办法在其他一切发生之前自动设置这个变量?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)