2016-12-07 8 views
2

新しいAnger2になりました。角度を使っていくつかの基本的なものを実装しようとしました。Angular 2 - CurrencyフォーマットがFirefoxで動作していません。 (v24)

内蔵通貨フォーマッタの使用中にエラーが発生しました。 最新のバージョンのangular2でAPIの一部が更新され、ブラウザの一部でフォーマッタが動作しないことが分かりました。 Chromeではすべて正常に動作しています。フォーマッタに建て使用して

: - 私は、カスタムフォーマッタを使用して実装回避策として

<span class="badge">{{product.price | currency}}</span> 

は、また、私は同じ問題に

import { Pipe, PipeTransform } from '@angular/core'; 
import { CurrencyPipe } from '@angular/common'; 

@Pipe({ 
    name: 'customCurrencyFormatter' 
}) 

export class CustomCurrencyFormatter implements PipeTransform { 

    transform(value: number, currencyCode: string = 'BRL', symbolDisplay: boolean = true, digits?: string): string { 
    if (!value) { 
     return ''; 
    } 

    let currencyPipe: CurrencyPipe = new CurrencyPipe('pt-BR'); 
    let newValue: string = currencyPipe.transform(value, currencyCode, symbolDisplay, digits); 

    return newValue; 
    } 

} 

が直面しています使用: -

<span class="badge">{{product.price | customCurrencyFormatter}}</span> 

以下のスクリーンショットを添付してください。これで私を助けてください。

ありがとうございます。

enter image description here

答えて

1

日付と通貨のパイプは、ECMAScriptの国際化APIを必要としています。 Safariなどの古いブラウザではサポートされていません。ポリフィルでサポートを追加できます。

<script src="https://cdn.polyfill.io/v2/polyfill.min.js?features=Intl.~locale.en"></script> 

このスクリプトをHTMLページに含めます。

+1

これは動作します...ありがとうbro :) –

関連する問題