关于WebView加载html字符串的问题

有需要加载静态页面的需求,web没有问题,但是原生有点问题。
查看源码和断点,发现安卓平台有loadHTMLString的函数,但是不知道为啥没有反应,有没有对这一块了解的。
具体代码如下:

const { ccclass, property } = _decorator;

@ccclass('ssWebView')

export class ssWebView extends WebView {

    loadHtmlStr(str: string) {

        let document = this._impl?.webview?.contentWindow?.document;

        if (document) {

            document.open();

            document.write(str);

            document.close();

        } else {

            let loadHTMLString = this._impl && this._impl?.webview["loadHTMLString"];

            if (loadHTMLString) {

                loadHTMLString(str, "about:blank");

            }

        }

    }

}

对了,引擎版本是3.6.2

被自己蠢到了,犯这种错误,思路没问题,但是语法出问题了,直接执行函数,函数的上下文就成window了,笨。

const { ccclass, property } = _decorator;
@ccclass('ssWebView')
export class ssWebView extends WebView {
    loadHtmlStr(str: string) {
        let document = this._impl?.webview?.contentWindow?.document;
        if (document) {
            document.open();
            document.write(str);
            document.close();
        } else {
            if (PlatformMgr.me.platformInfo.isAndroid || PlatformMgr.me.platformInfo.isIos) {
                let loadHTMLString = this._impl?.webview["loadHTMLString"];
                if (loadHTMLString) {
                    this._impl?.webview["loadHTMLString"](str, "");
                }
            }
        }
    }
}
1赞

Android平台可以