【问题标题】:Form Submit Error - Angular 2 Javascript表单提交错误 - Angular 2 Javascript
【发布时间】:2016-06-24 22:17:53
【问题描述】:

任何人都可以检查此图片链接并解释为什么在提交表单后会出现此错误。我已使用(submit) 提交表单并使用this.router.navigate(['/Todos']); 导航到下一页。这是我的代码,

login.html

<form #simpleForm="ngForm" (submit)="onSubmit(simpleForm, user)" novalidate>

    <div>
        <input type="text" placeholder="Name" [(ngModel)]="user.name" ngControl="name" #name="ngForm" required />
    </div>

    <button type="submit">Login</button>

</form>

login.js

(function (app) {

    app.LoginComponent = ng.core
            .Component({
                selector: 'login',
                templateUrl: 'login.html',
            })
            .Class({
                constructor: [ng.router.Router, function (router) {
                    this.router = router;
                    this.user = {};
                }],
                onSubmit: function (form, user) {
                    this.router.navigate(['/Todos']);
                },
            });

    ng.router.CanActivate(function (next, prev) {
        return true; //return false to cancel navigation
    })(app.LoginComponent);

})(window.app || (window.app = {}));

【问题讨论】:

  • 编辑器中有一个工具栏按钮可以添加图片,为什么要添加链接?该链接最终将断开,并使该问题对未来的访问者毫无用处。无论如何,应该将错误作为文本直接添加到问题中以使其可搜索。

标签: angular angular2-routing angular2-template angular2-directives angular2-forms


【解决方案1】:

这是一个已知问题https://github.com/angular/angular/issues/6786

使用setTimeout() 解决

onSubmit: function (form, user) {
  setTimeout(()=>{
    this.router.navigate(['/Todos']);
  }, 10);
},

【讨论】:

  • 太棒了。这是工作。谢谢。我已经删除了图片链接并在我的问题中添加了图片。
猜你喜欢
  • 1970-01-01
  • 2017-09-22
  • 2023-04-02
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多