0
私はこのコードをここに持っています。それはちょっと面倒ですので、後で私はそれを思い出すことができます。関数は、テキストの配列とModelとおそらくはタイマーを取ります。設定した時間が経過すると、テキストを回転してモデルの値を変更しようとします。私はAngular 2を初めて使うので、これを行うにはどの方法が良いかわからない。関数に結び付く
import {
Component, OnInit,
trigger, state, animate, transition, style
} from '@angular/core';
@Component({
selector: 'app-home',
templateUrl: './home.component.html',
animations: [
trigger('visibilityChanged', [
state('true' , style({ opacity: 1, transform: 'scale(1.0)' })),
state('false', style({ opacity: 0, transform: 'scale(0.0)' })),
transition('1 => 0', animate('500ms')),
transition('0 => 1', animate('900ms'))
])
]
})
export class HomeComponent implements OnInit {
fancyText: string;
isVisible : boolean = true;
constructor() {
var textArr = ['Fancy', 'Text', 'Blinking', 'Alot']
var curNewsIndex = 0
this.fancyText = textArr[curNewsIndex]
setInterval(() => {
++curNewsIndex
if (curNewsIndex >= textArr.length) {
curNewsIndex = 0
}
this.isVisible = !this.isVisible
setTimeout(() => {
this.fancyText = textArr[curNewsIndex]
this.isVisible = !this.isVisible
}, 500)
}, 2000)
}
ngOnInit() {}
}
だけあなたのモデルを初期化するためのあなた事前に
が関数に 'fancyText'に渡し、それが関数内で更新するためにとにかくあり: は、代わりに
ngOnInit
ブロックを使用しています。私は他のコンポーネントにも関数をアクセシブルにしたいと思っています。私は試みたが、関数はテンプレートで更新された値を印刷しません。 –