在这篇文章中,我们将为您详细介绍angular–模板解析错误:无法绑定到’routerLink’,因为它不是’a’的已知属性的内容。此外,我们还会涉及一些关于Angular10-无法绑定到“formG
在这篇文章中,我们将为您详细介绍angular – 模板解析错误:无法绑定到’routerLink’,因为它不是’a’的已知属性的内容。此外,我们还会涉及一些关于Angular 10-无法绑定到“ formGroup”,因为它不是“ form”的已知属性、Angular 11 - 无法绑定到“ngForOf”,因为它不是“li”的已知属性、Angular 2 RC5:无法绑定到’ngFor’,因为它不是已知的属性、Angular 2 – 无法绑定到’controlGroup’,因为它不是’div’元素的know属性的知识,以帮助您更全面地了解这个主题。
本文目录一览:- angular – 模板解析错误:无法绑定到’routerLink’,因为它不是’a’的已知属性
- Angular 10-无法绑定到“ formGroup”,因为它不是“ form”的已知属性
- Angular 11 - 无法绑定到“ngForOf”,因为它不是“li”的已知属性
- Angular 2 RC5:无法绑定到’ngFor’,因为它不是已知的属性
- Angular 2 – 无法绑定到’controlGroup’,因为它不是’div’元素的know属性
angular – 模板解析错误:无法绑定到’routerLink’,因为它不是’a’的已知属性
app.routes.ts
import { ModuleWithProviders } from '@angular/core'; import { Routes,RouterModule } from '@angular/router'; import { dogRoutes } from './Dogs/dog.routes'; import { catRoutes } from './Cats/cat.routes'; import {userRoutes} from "./Users/user.routes"; // Route Configuration export const routes: Routes = [ { path: '',redirectTo: '/dogs',pathMatch: 'full' },...catRoutes,...dogRoutes,...userRoutes ]; export const routing: ModuleWithProviders = RouterModule.forRoot(routes);
app.component.ts
import { Component } from '@angular/core'; @Component({ selector: 'my-app',template: ` <div> <header> <divhttps://www.jb51.cc/tag/headerrow/" target="_blank">header-row"> <!-- Title --> <span>Scotch Pets</span> <!-- Add spacer,to align navigation to the right --> <div></div> <!-- Navigation with router directives--> <nav> <a[routerLink]="['/']">Home</a> <a[routerLink]="['/cats']">Cats</a> <a[routerLink]="['/dogs']">Dogs</a> <a[routerLink]="['/login']">Login</a> </nav> </div> </header> <main> <h1>We care about pets...</h1> </main> </div> <!-- Router Outlet --> <div> <router-outlet></router-outlet> </div> `,}) export class AppComponent{}
app.module.ts
import { NgModule } from '@angular/core'; import { browserModule } from '@angular/platform-browser'; import { FormsModule } from '@angular/forms'; import { HttpModule,JsonpModule } from '@angular/http'; import { AppComponent } from './app.component'; import { DogsModule } from './Dogs/dogs.module'; import { CatsModule } from './Cats/cats.module'; import { UserModule } from './Users/users.module'; import {routing} from './app.routes'; import {RouterModule} from "@angular/router"; @NgModule({ imports: [ browserModule,FormsModule,HttpModule,RouterModule,JsonpModule,UserModule,DogsModule,CatsModule,routing ],declarations: [ AppComponent,],providers: [ ],bootstrap: [ AppComponent ] }) export class AppModule {}
狗list.component.ts
import {Component,OnInit} from '@angular/core'; import {PetService} from '../services/pet.service' import {Observable} from 'rxjs/Observable'; import {Pet} from '../model/pet'; import {AuthenticationService} from "../../Users/services/authentication.service"; @Component({ template: ` <h2>Dogs</h2> <p>List of dogs</p> <ul> <li*ngFor="let dog of dogs | async"> <span> <i>pets</i> <a [routerLink]="['/dogs',dog.id.$t]">{{dog.name.$t}}</a> </span> </li> </ul> ` }) // Component class implementing OnInit export class DogListComponent implements OnInit { // Private property for binding dogs: Observable<Pet[]>; constructor(private petService: PetService,private _service: AuthenticationService) { } // Load data ones componet is ready ngOnInit() { this._service.checkCredentials(); // Pass retreived pets to the property this.dogs = this.petService.findPets('dog'); alert(JSON.stringify(this.dogs)) } }
有没有更好的方法来添加修复此错误?
解决方法
Angular 10-无法绑定到“ formGroup”,因为它不是“ form”的已知属性
问题是您尚未在LoginComponent
中声明app.module.ts
只需在LoginComponent
中声明declarations
declarations: [
AppComponent,LoginComponent==> Add this!
]
,
在您的login.component.ts
中没有组件选择器,应该像这样:
@Component({
selector: 'app-login',templateUrl: './login.component.html',styleUrls: ['./login.component.css']
})
另外在app.module.ts
中,将LoginComponent
放在declarations
中。您将其放在imports
中,这是不正确的。
问题似乎来自LoginComponent
。
我们可以看到您的LoginComponent
的模块/组件吗?
我怀疑您忘记在其中实现FormsModule
和CommonModule
。
它也可能来自您制作LoginComponent的方式。
创建一个login.module.ts
,在声明中添加LoginComponent
并导出。
以防万一有人遇到我遇到的同样问题——那就是,我已经根据 Angular 风格指南在核心模块 (core.module.ts) 中创建了登录组件,但我忘记了(或 Angular- CLI 忽略)将其包含在 apps.module.ts 中。
这是该问题的众多症状之一,另一个是:无法绑定“ngModel”,因为它不是“div”的已知属性。
一旦我将核心模块放入应用模块中,问题就消失了。有助于解决的问题还在于问题是通过 IVY(编译器)还是通过 VSCode(TypeScript)抛出的。对我来说,我可以通过 StackOverflow 解决很多 TypeScript 问题,但是在 IVY 中编译失败。
Angular 11 - 无法绑定到“ngForOf”,因为它不是“li”的已知属性
如何解决Angular 11 - 无法绑定到“ngForOf”,因为它不是“li”的已知属性?
我有一个 angular 11 应用,在默认应用模块内有一个名为 admin-layout
的模块。
这是我的app.module.ts
:
import { browserAnimationsModule } from "@angular/platform-browser/animations";
import { NgModule } from ''@angular/core'';
import { browserModule } from ''@angular/platform-browser'';
import { HttpClientModule } from ''@angular/common/http'';
import { RouterModule } from ''@angular/router'';
import { ToastrModule } from "ngx-toastr";
import { SidebarModule } from ''./sidebar/sidebar.module'';
import { FooterModule } from ''./shared/footer/footer.module'';
import { NavbarModule} from ''./shared/navbar/navbar.module'';
import { AppComponent } from ''./app.component'';
import { AppRoutes } from ''./app.routing'';
import { AdminLayoutComponent } from ''./layouts/admin-layout/admin-layout.component'';
@NgModule({
declarations: [
AppComponent,AdminLayoutComponent
],imports: [
browserAnimationsModule,RouterModule.forRoot(AppRoutes,{
useHash: true
}),SidebarModule,NavbarModule,ToastrModule.forRoot(),FooterModule,browserModule,HttpClientModule,],providers: [],bootstrap: [AppComponent]
})
export class AppModule { }
在 app/layouts/admin-layouts
中,我将 admin-layout.module.ts
设为:
import { NgModule } from ''@angular/core'';
import { RouterModule } from ''@angular/router'';
import { CommonModule } from ''@angular/common'';
import { FormsModule } from ''@angular/forms'';
import { AdminLayoutRoutes } from ''./admin-layout.routing'';
import { DashboardComponent } from ''../../pages/dashboard/dashboard.component''
import { NgbModule } from ''@ng-bootstrap/ng-bootstrap'';
import { HttpClientModule } from ''@angular/common/http'';
import { AngularsvgIconModule } from ''angular-svg-icon'';
@NgModule({
imports: [
CommonModule,RouterModule.forChild(AdminLayoutRoutes),FormsModule,NgbModule,AngularsvgIconModule.forRoot(),declarations: [
DashboardComponent,]
})
export class AdminLayoutModule {}
现在在组件 app/pages/dashboard/dashboard-components.ts
中,我有:
import { Component,OnInit,Input } from ''@angular/core'';
import { HttpClient,HttpHeaders } from ''@angular/common/http'';
import { environment } from ''./../../../environments/environment'';
import Chart from ''chart.js'';
import { NgbActiveModal,NgbModal } from ''@ng-bootstrap/ng-bootstrap'';
@Component({
selector: ''ngbd-modal-content'',template: `
<div>
<h4>Details</h4>
<button type="button"aria-label="Close" (click)="activeModal.dismiss(''Cross click'')">
<span aria-hidden="true">×</span>
</button>
</div>
<div>
<div>
<div>
<div>
<div>
<li *ngFor="let item of data; let i = index">
{{i}} {{item}}
</li>
</div>
</div>
</div>
</div>
</div>
`
})
export class NgbdModalContent {
@input() data: [];
constructor(public activeModal: NgbActiveModal) {}
}
@Component({
selector: ''dashboard-cmp'',moduleId: module.id,templateUrl: ''dashboard.component.html''
})
export class DashboardComponent implements OnInit{
public data = [];
httpOptions = { headers: new HttpHeaders({ ''Content-Type'': ''application/json'' }) };
constructor(private modalService: NgbModal,private http: HttpClient) {}
ngOnInit(){
const modalRef = this.modalService.open(NgbdModalContent,{ size: ''xl'' });
this.http.get<any>(environment.api_url + ''stats'').subscribe(data => {
for(var i = 1; i <= Object.keys(data["pole"]).length; i++){
data.push(data["data"][i]);
}
console.log(data);
modalRef.componentInstance.data = data;
})
}
}
我收到以下错误 - Can''t bind to ''ngForOf'' since it isn''t a kNown property of ''li''
console.log(data)
产生我 (2) [3.81,1.44]
我在这里做错了什么?与其他 stackoverflow 答案一样,他们需要我在模块中导入 CommonsModule
。我在应用程序级别和模块级别都有它。尝试从另一个删除也不起作用。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)
Angular 2 RC5:无法绑定到’ngFor’,因为它不是已知的属性
Can't bind to 'ngFor' since it isn't a kNown property of 'div'. (" <div [ERROR ->]*ngFor="t of test">{{t}}</div>")
HTML:
<div *ngFor="t of test">asdas</div>
本主题的所有帖子都说明您需要导入browserModule,但我已经这样做了.
我忘记了变量前面的“let”这个词!
预备RC5用于工作,所以这是RC5的一个突破性变化.我知道让我们需要,但以前这只是有效的.而错误根本没有用.
希望这可以帮助!
Angular 2 – 无法绑定到’controlGroup’,因为它不是’div’元素的know属性
Can’t bind to ‘controlGroup’ since it isn’t a kNow property of the
‘div’ element and there are no matching directives with a
corresponding property
的index.html
<!DOCTYPE html> <html> <head lang="en"> <Meta charset="UTF-8"> <title>Angular 2</title> <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.3.1/css/bootstrap.min.css" /> <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.2.0/css/font-awesome.min.css" /> <link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Open+Sans:400,600" /> <script src="https://github.jspm.io/jmcriffey/bower-traceur-runtime@0.0.87/traceur-runtime.js"></script> <script src="https://jspm.io/system@0.16.js"></script> <script src="https://code.angularjs.org/2.0.0-alpha.28/angular2.dev.js"> </script> </head> <body> <radar>Loading...</radar> <script>System.import('radar-view');</script> </body> </html>
雷达view.ts
/// <reference path="typings/angular2/angular2.d.ts" /> import {Component,View,bootstrap} from 'angular2/angular2'; import {FormBuilder,Validators,formDirectives,ControlGroup} from 'angular2/angular2'; @Component({ selector: 'radar',appInjector: [FormBuilder] }) @View({ template: '<div [control-group]="form"><input control="levels"> {{form.controls.levels.value}}</div>',directives: [formDirectives] }) export class RadarView { form: ControlGroup; builder: FormBuilder; constructor(builder: FormBuilder) { this.builder = builder; this.form = builder.group({ levels: ["5"] }); } } bootstrap(RadarView);
编译
tsc --watch --target es5 --module commonjs --emitDecoratorMetadata
此外,当我尝试使用validators.required时,它看起来似乎也找不到:
this.form = builder.group({ levels: ["5",Validators.required] });
Error:(21,38) TS2339: Property ‘required’ does not exist on type
‘typeof Validators’.
我的代码出了什么问题?
解决方法
对于此问题,解决方案是将以下内容添加到angular2.d.ts:
class Validators { static required: any; }
同样来自Pawel Kozlowski(https://github.com/angular/angular/issues/2779),< div [control-group] =“form”>< input control =“levels”>必须被替换< div [ng-control-group] =“form”>< input ng-control =“levels”>.这仍然无法正常工作没有ControlContainer的提供者! ($__ 0 – > ControlContainer).
今天关于angular – 模板解析错误:无法绑定到’routerLink’,因为它不是’a’的已知属性的分享就到这里,希望大家有所收获,若想了解更多关于Angular 10-无法绑定到“ formGroup”,因为它不是“ form”的已知属性、Angular 11 - 无法绑定到“ngForOf”,因为它不是“li”的已知属性、Angular 2 RC5:无法绑定到’ngFor’,因为它不是已知的属性、Angular 2 – 无法绑定到’controlGroup’,因为它不是’div’元素的know属性等相关知识,可以在本站进行查询。
本文标签: