Angular学习第二天--问题记录

一、问题

1.用脚手架搭建完项目之后,缺少app.modules.ts文件,

2.解决办法:

在终端继续输入命令 ng new 项目名称 --no-standalone --routing --ssr=false

3.完整目录:

二、问题

1.问题来源,源代码:

javascript 复制代码
<form action="">

    账号:<input type="text" required #nameInp="ngModel" [(ngModel)]="formData.name">
    <!-- <p>验证结果:{{nameInp.valid}}</p> -->
    <p *ngIf="!nameInp.valid">请输入账号!!!</p>


  <label>
    密码:<input type="text" required #pwdInp="ngModel" [(ngModel)]="formData.password">
    <p>验证结果:{{pwdInp.valid}}</p>
  </label>
  <button (click)="subForm2(nameInp)">提交验证</button>
</form>

2.控制台报错

javascript 复制代码
main.ts:6 ERROR Error: NG01352: If ngModel is used within a form tag, either the name attribute must be set or the form control must be defined as 'standalone' in ngModelOptions.

3.解决办法:

在绑定 ngModel的标签上绑定 name属性即可

4.完整代码,正确代码:

javascript 复制代码
<form action="">

    账号:<input type="text" required #nameInp="ngModel" [(ngModel)]="formData.name" name="username">
    <!-- <p>验证结果:{{nameInp.valid}}</p> -->
    <p *ngIf="!nameInp.valid">请输入账号!!!</p>


  <label>
    密码:<input type="text" required #pwdInp="ngModel" [(ngModel)]="formData.password" name="password">
    <p>验证结果:{{pwdInp.valid}}</p>
  </label>
  <button (click)="subForm2(nameInp)">提交验证</button>
</form>
相关推荐
WindrunnerMax3 分钟前
基于 Markdown-It 的无序列表折叠插件
前端·javascript·github
剑神一笑5 分钟前
CSS Loading 动画生成器
前端·css
神三元13 分钟前
最近半年,我做了个 AI-Native 的 Agent 从零到进阶教程
前端·javascript·面试
XiYang-DING27 分钟前
jQuery
前端·javascript·jquery
Morwit27 分钟前
【力扣hot100】 221. 最大正方形
前端·算法·leetcode
明月_清风38 分钟前
关于node 模块化的现状与未来
前端·node.js
老王以为1 小时前
从源码到架构:React useActionState 深度剖析
前端·javascript·react.js
前端超有趣1 小时前
详解JavaScript中encodeURIComponent和decodeURIComponent的使用(附实战场景)
前端·javascript
萧曵 丶1 小时前
Vue3组件通信全方案
前端·javascript·vue.js·typescript·vue3
前端那点事1 小时前
双Token无感刷新:Vue3 + Axios 企业级完整实现
前端·vue.js