Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/unity3d/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Unity3d 无法键入HTML表单文本/密码/数字输入字段(使用Unity WebGL构建的网站)_Unity3d_Unity Webgl - Fatal编程技术网

Unity3d 无法键入HTML表单文本/密码/数字输入字段(使用Unity WebGL构建的网站)

Unity3d 无法键入HTML表单文本/密码/数字输入字段(使用Unity WebGL构建的网站),unity3d,unity-webgl,Unity3d,Unity Webgl,我们正在开发一个使用Angular 9的站点。 我们还在其中集成了Unity3D WebGL构建。 当我试图在一个表单中的文本/密码/数字输入字段中键入内容时,它不会写入任何内容,该字段似乎也不会接收输入;此外,我将字段绑定到的变量不会用新值更新。 更奇怪的是: 我可以选择突出显示的输入字段,就好像我可以开始键入一样 我可以在字段上按CTRL+C组合键,并且我在其他地方复制的内容会按预期粘贴 我可以使用type=number箭头选择器设置字段的值 我无法通过键盘在字段中键入 我可以按预期与其他表

我们正在开发一个使用Angular 9的站点。 我们还在其中集成了Unity3D WebGL构建。 当我试图在一个表单中的文本/密码/数字输入字段中键入内容时,它不会写入任何内容,该字段似乎也不会接收输入;此外,我将字段绑定到的变量不会用新值更新。 更奇怪的是:

我可以选择突出显示的输入字段,就好像我可以开始键入一样 我可以在字段上按CTRL+C组合键,并且我在其他地方复制的内容会按预期粘贴 我可以使用type=number箭头选择器设置字段的值 我无法通过键盘在字段中键入 我可以按预期与其他表单标记交互,例如 如果我重新加载页面,它通常会按预期开始工作,我可以在字段中键入内容 下面是上面我的登录表单component.ts中的代码,下面是模板HTML

从“@angular/core”导入{Component,OnInit}; 从“../auth.service”导入{AuthService} 从“rxjs/operators”导入{first}; 从'@angular/Router'导入{Router,ActivatedRoute}; @组成部分{ 选择器:“应用程序登录”, templateUrl:'./login.component.html', 样式URL:['./login.component.less'] } 导出类LoginComponent实现OnInit{ 电子邮件:string=; 密码:string=; returnUrl:string=home; 构造函数私有路由器:路由器,私有路由:ActivatedRoute,私有authService:authService{} 恩戈尼尼特:空虚{ 让tmpReturnUrl=this.route.snapshot.queryParams[returnUrl]; 如果tmpReturnUrl!=未定义 { console.logtrue; this.returnUrl=tmpReturnUrl; } 其他的 console.logfalse; setInterval=>{ console.logEMAIL:+this.email; }, 1000; } 提交{ this.authService.loginnis.email,this.password .首先 订阅 结果=>{ console.logcaiooa; this.router.navigate[this.returnUrl]; }, err=>console.logerr ; } } 登录 电邮: 密码: 登录 注册
最后我找到了问题的根源。在我们的网站中,我们集成了Unity3D WebGL构建,如果我从Unity的网页移动到登录页面,Unity过程仍然在运行。Unity拥有键盘每个输入的焦点,因此它捕获所有输入

我们通过改变页面解决了这个问题。这样,输入字段可以再次从键盘接收输入


另一个解决方案,也许我还没有测试过,可能是不让Unity获得输入,如中所述,或者设置为false。

为什么使用NgMode我认为它不受欢迎,使用它如何更受推荐呢?我不熟悉angular,并阅读了模板驱动/反应式表单,但不需要每个属性都有一个FormControl。但我不知道NgModel不受欢迎,在这种情况下我应该对其进行更改您可以在GitHub中查看此问题:关于ngModle不受欢迎我一定会更新它并让您知道,但问题仍然存在……:'谢谢你的发帖——我对一个类似的问题很生气。除了其中一个页面,FormControl在任何地方都可以正常工作。这就是WebGL。