evaluateJavaScript 用于整个文件

Posted

技术标签:

【中文标题】evaluateJavaScript 用于整个文件【英文标题】:evaluateJavaScript used for an entire file 【发布时间】:2015-02-07 21:55:57 【问题描述】:

我需要一个我的编辑器来评估我打开的任何 JS 文件中的 JS 代码。但是,它永远不会。虽然应用程序输出显示

    QIODevice::read: device not open

这是我的代码(mFilename 是保存打开文件的文件名的变量)

    QFile sFile(mFilename);
    QTextStream in(&sFile);
    text = in.readAll();
    sFile.close();

    ui->webView->page()->mainFrame()->evaluatejavascript(text);

【问题讨论】:

【参考方案1】:

您忘记打开文件。要打开它,您必须使用 QFile::open 方法。 如果您想阅读它,只需像这样调用 file.open:

sFile.open(QIODevice::ReadOnly);

确实,您没有通过调用 QFile 构造函数打开文件。

所以,您的代码现在是:

QFile sFile(mFilename);
QTextStream in(&sFile);
sFile.open(QIODevice::ReadOnly);
text = in.readAll();
sFile.close();

ui->webView->page()->mainFrame()->evaluateJavaScript(text);

【讨论】:

它缺少一个Q,但除此之外,谢谢!正是我需要的答案

以上是关于evaluateJavaScript 用于整个文件的主要内容,如果未能解决你的问题,请参考以下文章

使用 evaluateJavaScript(..) 调用 javascript 函数,以读取应用程序包中的文本文件

如何使用evaluateJavaScript 将数据从WKWebview 发送到HTML 文件| iOS | Objective-C

evaluateJavascript 是如何工作的?

webView.evaluateJavascript。不想执行。

WKWebView 中的 evaluateJavaScript() 仅在第一次工作

使用 evaluateJavascript 处理来自 Android WebView 的 Promise