如果在表单标签中使用ngModel,则必须在ngModelOptions中设置name属性或将表单控件定义为“独立”

时间:2020-04-29 09:16:32

标签: html angular typescript angular-forms

我使用angular9。当我单击登录按钮时,我的目的是重定向我 如果成功登录到仪表板,否则将我重定向到登录 页。当我输入用户名和密码并单击登录按钮时 它显示错误如果在表单标签中使用了ngModel,则 必须设置name属性或将表单控件定义为 ngModelOptions中的“独立”

<div class="app-body">
    <main class="main d-flex align-items-center">
        <div class="container">
            <div class="row">
            <div class="col-md-8 mx-auto">
                <div class="card-group">
                <div class="card p-4">
                    <div class="card-body">
                    <form>
                        <h1>Login</h1>
                        <p class="text-muted">Sign In to your account</p>
                        <div class="input-group mb-3">
                        <div class="input-group-prepend">
                            <span class="input-group-text"><i class="icon-user"></i></span>
                        </div>
                        <input type="text" class="form-control" placeholder="Username" [(ngModel)]="username" autocomplete="username" required>
                        </div>
                        <div class="input-group mb-4">
                        <div class="input-group-prepend">
                            <span class="input-group-text"><i class="icon-lock"></i></span>
                        </div>
                        <input type="password" class="form-control" placeholder="Password"[(ngModel)]="password" autocomplete="current-password" required>
                        </div>
                        <div class="row">
                        <div class="col-6">
                            <button type="button" (click)=dologin class="btn btn-primary px-4">Login</button>
                        </div>
                        <div class="col-6 text-right">
                            <button type="button" class="btn btn-link px-0">Forgot password?</button>
                        </div>
                        </div>
                    </form>
                    </div>
                </div>
                <div class="card text-white bg-primary py-5 d-md-down-none" style="width:44%">
                    <div class="card-body text-center">
                    <div>
                        <h2>Sign up</h2>
                        <p>Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.</p>
                        <button type="button" class="btn btn-primary active mt-3">Register Now!</button>
                    </div>
                    </div>
                </div>
                </div>
            </div>
            </div>
        </div>
    </main>
</div>

代码

/*Decreasing the arrow size*/
::ng-deep .mat-expansion-indicator::after {
  padding: 2px !important; /* decreasing inside space */ 
  border-width: 0px 1px 1px 0px !important; /* decreasing border-width */
}

1 个答案:

答案 0 :(得分:0)

如果您像这样使用[(ngModel)],则需要设置[ngModelOptions]="{standalone: true}"

<div class="app-body">
    <main class="main d-flex align-items-center">
        <div class="container">
            <div class="row">
            <div class="col-md-8 mx-auto">
                <div class="card-group">
                <div class="card p-4">
                    <div class="card-body">
                    <form>
                        <h1>Login</h1>
                        <p class="text-muted">Sign In to your account</p>
                        <div class="input-group mb-3">
                        <div class="input-group-prepend">
                            <span class="input-group-text"><i class="icon-user"></i></span>
                        </div>
                        <input type="text" class="form-control" placeholder="Username" [(ngModel)]="username" [ngModelOptions]="{standalone: true}" autocomplete="username" required>
                        </div>
                        <div class="input-group mb-4">
                        <div class="input-group-prepend">
                            <span class="input-group-text"><i class="icon-lock"></i></span>
                        </div>
                        <input type="password" class="form-control" placeholder="Password"[(ngModel)]="password" [ngModelOptions]="{standalone: true}" autocomplete="current-password" required>
                        </div>
                        <div class="row">
                        <div class="col-6">
                            <button type="button" (click)=dologin class="btn btn-primary px-4">Login</button>
                        </div>
                        <div class="col-6 text-right">
                            <button type="button" class="btn btn-link px-0">Forgot password?</button>
                        </div>
                        </div>
                    </form>
                    </div>
                </div>
                <div class="card text-white bg-primary py-5 d-md-down-none" style="width:44%">
                    <div class="card-body text-center">
                    <div>
                        <h2>Sign up</h2>
                        <p>Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.</p>
                        <button type="button" class="btn btn-primary active mt-3">Register Now!</button>
                    </div>
                    </div>
                </div>
                </div>
            </div>
            </div>
        </div>
    </main>
</div>

此处提供更多信息:https://angular.io/api/forms/NgModel

相关问题