2017-08-16 59 views
1

我不能split使用離子的值pipe使用離子管不能拆分

<div class="col" style="text-align: right">{{ timearrivals | mattDamon }}</div> 

pipe代碼是在這裏:

import {Pipe} from '@angular/core'; 

@Pipe({ 
    name: 'mattDamon' 
}) 
export class MattDamon { 
    transform(value, args) { 
     let time = value.split('T')[1]; 
     let timehr = time.split(':')[0]; 
     let timemin = time.split(':')[1]; 
     let Fulltim = timehr + ":" + timemin; 
     return Fulltim; 
    } 
} 

它顯示了以下錯誤:

但我split在另一頁使用該pipe另一個變量。

<P>{{ item.operationalTimes.publishedArrival.dateLocal | mattDamon }}</P> 
+0

它顯示未定義 –

+0

爲什麼我得到了一個未定義? 當使用像這樣的{{timearrivals}}時,它顯示的值爲 ,但{{timearrivals | mattDamon}}它顯示undefined –

+0

爲什麼我得到undefined?當使用像這樣{{timearrivals}}時,它顯示值,但{{timearrivals | mattDamon}}它顯示未定義 –

回答

0

出於某種原因timearrivals還沒有一個值首次mattDamon -pipe運行。爲了保護自己免受試圖調用split()timearrivals當它是undefined,用一個簡單的if-else

transform(value, args){ 
    if(value){ 
     let time = value.split('T')[1]; 
     let timehr = time.split(':')[0]; 
     let timemin = time.split(':')[1]; 

     let Fulltim = timehr + ":" + timemin; 
     return Fulltim; 
    } 
    else{ 
     return value; 
    } 
}