KEYBOARD_DOM_ERROR
KEYBOARD_DOM_ERROR
我正在尝试在我的 angular 应用程序中创建一个虚拟键盘,我发现了 Simple-keyboard 包,所以我决定安装它并对其进行自定义,但是我遇到了一些错误,例如 .simple-keyboard" 未在 DOM. 中找到,这是什么问题?有人可以帮助我吗?
我正在使用 angular 11.2.8
在您的 html 文件中添加以下代码
<div class="simple-keyboard"></div>
我在 Angular 8 中使用这个包,不确定这是否有帮助。
当我安装并按照 Angular example, I saw KEYBOARD_DOM_ERROR in my console either, then I found the solution for me which this issue 回答的步骤进行操作时。
KEYBOARD_DOM_ERROR
means that <div class="simple-keyboard"></div>
was not found in the dom at instantiation.
并且我尝试在 .ts
文件中创建一个元素,而不是仅仅添加到模板中,就像问题所说的那样。
// component.ts
// you can add other className to make keyboard display:none first
ngOnInit(): void {
const div = document.createElement('div');
div.className += "simple-keyboard";
document.body.appendChild(div);
}
<!-- component.html -->
<!-- just want to remind you need to delete it -->
<!-- <div class="simple-keyboard"></div> -->
经过这两件事,我的错误消失了,我可以做接下来需要做的事情了。
确保您的 html 有 div 和 simple-keyboard class(或您为键盘指定的任何名称)。
如果错误不断发生,请尝试在初始化视图后创建键盘实例:
ngAfterViewInit() {
this.keyboard = new Keyboard(".simple-keyboard",{
onChange: input => this.onChange(input),
onKeyPress: button => this.onKeyPress(button)
});
}
我正在尝试在我的 angular 应用程序中创建一个虚拟键盘,我发现了 Simple-keyboard 包,所以我决定安装它并对其进行自定义,但是我遇到了一些错误,例如 .simple-keyboard" 未在 DOM. 中找到,这是什么问题?有人可以帮助我吗?
我正在使用 angular 11.2.8
在您的 html 文件中添加以下代码
<div class="simple-keyboard"></div>
我在 Angular 8 中使用这个包,不确定这是否有帮助。
当我安装并按照 Angular example, I saw KEYBOARD_DOM_ERROR in my console either, then I found the solution for me which this issue 回答的步骤进行操作时。
KEYBOARD_DOM_ERROR
means that<div class="simple-keyboard"></div>
was not found in the dom at instantiation.
并且我尝试在 .ts
文件中创建一个元素,而不是仅仅添加到模板中,就像问题所说的那样。
// component.ts
// you can add other className to make keyboard display:none first
ngOnInit(): void {
const div = document.createElement('div');
div.className += "simple-keyboard";
document.body.appendChild(div);
}
<!-- component.html -->
<!-- just want to remind you need to delete it -->
<!-- <div class="simple-keyboard"></div> -->
经过这两件事,我的错误消失了,我可以做接下来需要做的事情了。
确保您的 html 有 div 和 simple-keyboard class(或您为键盘指定的任何名称)。
如果错误不断发生,请尝试在初始化视图后创建键盘实例:
ngAfterViewInit() {
this.keyboard = new Keyboard(".simple-keyboard",{
onChange: input => this.onChange(input),
onKeyPress: button => this.onKeyPress(button)
});
}