微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

TVML/TVJS:重新加载后 getActiveDocument() 返回 undefined

如何解决TVML/TVJS:重新加载后 getActiveDocument() 返回 undefined

我有一个 TVML 应用程序,顶部有一个菜单,其中包括一个登录/退出按钮(取决于用户是否登录)。当用户去登出有一个确认消息和一个登出按钮。如果用户点击按钮,则执行以下操作:

localStorage.removeItem("userID");
App.reload();
return;

如果我然后尝试重新登录,我会转到登录屏幕,在那里我有一个表单供用户输入电子邮件和下一步按钮,其中包含以下内容

let keyboard = this._getStringFromTextField();
sessionStorage.setItem("useremail",keyboard.text);

这是 _getStringFromTextField() 函数

_getStringFromTextField() {
    let doc = getActiveDocument();
    let textFields = doc.getElementsByTagName('textField');
    let textField = textFields.item(0);
    return textField.getFeature("Keyboard");
}

问题是 getActiveDocument() 返回 undefined 而不是活动文档。因此,按钮不起作用,我永远无法获得下一个屏幕,即密码表单。

每当我在退出后重新加载应用程序并立即尝试重新登录时,就会发生这种情况。唯一的解决方法是完全关闭应用程序并重新启动它。

关于为什么会发生这种情况的任何见解?重新加载后如何让 getActiveDocument() 工作?

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。