1
コンポーネント宣言で別のコンポーネントをインポートしないで、ここで私が角度2-することができます私は現在、それを試して、角度2に新しいです
like.component.ts部品コードのように
になった問題があります
import { Component ,Input} from '@angular/core';
@Component({
selector: 'like',
template: `
<span (click) ="onClick()" class="glyphicon glyphicon-heart" [class.liked]="isLike" ></span>
<span>{{likeCount+incrmentCOunt}}</span>
`,
styles:[`
.glyphicon-heart{
color:#ccc;
}
.liked{
color:deeppink;
}
`]
})
export class LikeComponent {
@Input("like") isLike = false;
@Input() likeCount:number;
incrmentCOunt=0;
onClick(){
if(this.isLike){
this.isLike=false;
this.incrmentCOunt=0;
}else{
this.isLike=true;
this.incrmentCOunt=1;
}
}
}
私はngModuleデコレータにすべての部品を輸入していますネストされたコンポーネントを実装し、この
のような宣言としてそれを追加する際にapp.module.ts
import { NgModule } from '@angular/core';
import { BrowserModule } from '@angular/platform-browser';
import { TweetComponent } from './tweet/tweet.component';
import { AppComponent } from './app.component';
import { LikeComponent } from './like/like.component';
@NgModule({
imports: [ BrowserModule ],
declarations: [ AppComponent ,TweetComponent,LikeComponent],
bootstrap: [ AppComponent ]
})
export class AppModule { }
これは、完全に正常に動作している今、私はngModuleからLikeComponentを削除することを決定し、TweetComponentでそれをインポートしようとした、
tweet.component.ts
import { Component,Input } from '@angular/core';
import { LikeComponent } from './../like/like.component';
@Component({
selector: 'tweet',
template: `
<div class="media">
<div class="media-left">
<a href="#">
<img class="media-object" [src]="tweet.img" alt="...">
</a>
</div>
<div class="media-body">
<h4 class="media-heading">{{tweet.name}} <span>{{tweet.handle}}</span></h4>
<div >{{tweet.content}}</div>
<div>
<like [likeCount]="tweet.likeCount"></like>
</div>
</div>
</div>
`
,
declarations:[LikeComponent]
})
export class TweetComponent {
@Input() tweet={
name:"Mukul",
handle:"@mukul",
content:"some content",
likeCount:20
}
}
ここ
はそれを使用することができないIAM、iはdeclerationでそれを注入することを試みたとディレクティブの両方が動作していない、タイプに関連するエラーが昇華
に示されていますここではいくつかの明確化を得ることを望ん、おかげ@Component()
で
更新** LikeComponent **コードをあなたのポストので、なくなっています。まず、達成しようとしていることは何ですか? – Aravind
確実に@Aravindが更新されましたtwitchコンポーネント内のlikeComponentをインポートしようとしています LikeComponentが最初にアプリケーションモジュール内にインポートされましたが、Twitterコンポーネント内にインポートできるかどうかを確認したい場合は –
宣言を削除してください:[LikeComponent] 。あなたのモジュールでコンポーネントをデクリメントする必要があります –