我正在研究 Angular FormArray,因此我正在研究本教程:https://www.youtube.com/watch?v =aOQ1xFC3amw \n不幸的是,我无法\xe2\x80\x99t 应用该教程。我的 HTML 部分出现错误。
\n我用的是 Angular 11
\n这是我的 HTML,显示了错误消息:
\n <div [formGroup]="myForm">\n <ng-container formArrayName="demoTypes">\n\n <ng-container *ngFor="let demoForm of demoFormArray.controls">\n\n <div [formGroup]="demoForm"><!--formGroup is as error underlined-->\n \n </div>\n\n </ng-container>\n\n </ng-container>\n </div>\n\nRun Code Online (Sandbox Code Playgroud)\n错误信息是:
\n\n\n类型“AbstractControl”缺少类型“FormGroup”中的以下属性:controls、registerControl、addControl、removeControl 以及另外 3 个属性。
\n
这是我的 TypeScript 类:
\n\n export class DemoComponent implements OnInit {\n\n myForm!: FormGroup;\n\n constructor(private formBuilder: FormBuilder) { }\n\n ngOnInit(): void {\n this.createForm();\n }\n\n createForm() {\n this.myForm = this.formBuilder.group({\n demoTypes: new FormArray([]),\n });\n\n this.addDemoTypes();\n …Run Code Online (Sandbox Code Playgroud) ng serve -o 显示以下错误消息:
- Generating browser application bundles...(node:12364) [DEP0111] DeprecationWarning: Access to process.binding('http_parser') is deprecated.
(Use `node --trace-deprecation ...` to show where the warning was created)
Run Code Online (Sandbox Code Playgroud)
比终端显示: \ Generating browser application bundles (phase: emitting)...
但是浏览器一直打不开,看来VSC陷入了死循环。
我能做些什么来解决这个问题?
我\xe2\x80\x99m是Angular的新手,目前我正在研究路由。我在组件中使用子路由时遇到了问题。routerLink\xe2\x80\x99t 在组件中呈现为链接。如果我使用路由器插座,应用程序就会崩溃。
\n使用路由器插座我收到以下错误消息:
\n src/app/gardening/gardening/gardening.component.html:5:1 - error NG8001: \'router-outlet\' is not a known element:\n1. If \'router-outlet\' is an Angular component, then verify that it is part of this module.\n2. If \'router-outlet\' is a Web Component then add \'CUSTOM_ELEMENTS_SCHEMA\' to the \'@NgModule.schemas\' of this component to suppress this message.\n\n5 <router-outlet></router-outlet>\n ~~~~~~~~~~~~~~~\n\n src/app/gardening/gardening/gardening.component.ts:5:16\n 5 templateUrl: \'./gardening.component.html\',\n ~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n Error occurs in the template of component GardeningComponent.\nRun Code Online (Sandbox Code Playgroud)\n我用谷歌搜索了错误消息,解决方案始终是模块中缺少 RouterModule 的导入。我已经导入了 RouterModule。
\n这是我的 module.ts
\n@NgModule({\ndeclarations: [GardeningComponent, DemogardenComponent],\nimports: [\nCommonModule, RouterModule\n],\nexports:[GardeningComponent, DemogardenComponent]\n\n})\nexport class …Run Code Online (Sandbox Code Playgroud) 我正在研究 ngx-translate。正如几乎教程所描述的那样,我将其引入 app.component.html 中。但是如何在我的模块的组件中执行此操作?我是否有每个模块的所有步骤,或者有更简单的方法吗?如果我将所有步骤从 app.module.ts 带到 my.module.ts,我会在运行 ngserve 时收到一条错误消息。
\nERROR in src/app/landing-page/home/home.component.html:4:22 - error NG8004: No pipe found with name \'translate\'.\nRun Code Online (Sandbox Code Playgroud)\n这是我的 home.component.ts:
\nimport { Component, OnInit } from \'@angular/core\';\nimport { TranslateService } from \'@ngx-translate/core\';\n\n@Component({\n selector: \'app-home\',\n templateUrl: \'./home.component.html\',\n styleUrls: [\'./home.component.scss\']\n})\nexport class HomeComponent implements OnInit {\n \n constructor(private translateServeice: TranslateService) { }\n\n ngOnInit(): void {\n }\n\n}\nRun Code Online (Sandbox Code Playgroud)\n这是我的landingpage.module.ts
\n import { NgModule } from \'@angular/core\';\n import { CommonModule } from \'@angular/common\';\n import { HomeComponent } from \'./home/home.component\';\n …Run Code Online (Sandbox Code Playgroud)