码迷,mamicode.com
首页 > 其他好文 > 详细

[Angular 2] Pipe Purity

时间:2015-11-01 06:53:35      阅读:307      评论:0      收藏:0      [点我收藏+]

标签:

Explaining how Pipes only change by default when your Pipe input parameters change and not when your data changes. It also shows you how to make an “unpure” pipe if you always want your pipe to update.

 

import {Pipe} from ‘angular2/angular2‘;

@Pipe({
    name: ‘startsWith‘
})

export class StartsWith{

    transform(value, [field, letter]){
        return value.filter((item) => {
            return item[field].startsWith(letter);
        })
    }
}

Current Pipe only watch for [field, letter] changes, not value changes.

 

The way to tell pipe also watch for value changes is just add ‘pure: false‘:

import {Pipe} from ‘angular2/angular2‘;

@Pipe({
    name: ‘startsWith‘,
    pure: false
})

export class StartsWith{

    transform(value, [field, letter]){
        return value.filter((item) => {
            return item[field].startsWith(letter);
        })
    }
}

 

[Angular 2] Pipe Purity

标签:

原文地址:http://www.cnblogs.com/Answer1215/p/4926645.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!