本文整理匯總了TypeScript中@angular/common.CurrencyPipe類的典型用法代碼示例。如果您正苦於以下問題:TypeScript CurrencyPipe類的具體用法?TypeScript CurrencyPipe怎麽用?TypeScript CurrencyPipe使用的例子?那麽, 這裏精選的類代碼示例或許可以為您提供幫助。
在下文中一共展示了CurrencyPipe類的9個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的TypeScript代碼示例。
示例1: describe
describe('CurrencyPipe', () => {
let pipe: CurrencyPipe;
beforeEach(() => { pipe = new CurrencyPipe('en-US'); });
describe('transform', () => {
it('should return correct value for numbers', () => {
expect(pipe.transform(123)).toEqual('$123.00');
expect(pipe.transform(12, 'EUR', 'code', '.1')).toEqual('EUR12.0');
expect(pipe.transform(5.1234, 'USD', 'code', '.0-3')).toEqual('USD5.123');
expect(pipe.transform(5.1234, 'USD', 'code')).toEqual('USD5.12');
expect(pipe.transform(5.1234, 'USD', 'symbol')).toEqual('$5.12');
expect(pipe.transform(5.1234, 'CAD', 'symbol')).toEqual('CA$5.12');
expect(pipe.transform(5.1234, 'CAD', 'symbol-narrow')).toEqual('$5.12');
expect(pipe.transform(5.1234, 'CAD', 'symbol-narrow', '5.2-2')).toEqual('$00,005.12');
expect(pipe.transform(5.1234, 'CAD', 'symbol-narrow', '5.2-2', 'fr'))
.toEqual('00 005,12 $');
});
it('should not support other objects', () => {
expect(() => pipe.transform({}))
.toThrowError(
`InvalidPipeArgument: '[object Object] is not a number' for pipe 'CurrencyPipe'`);
});
it('should warn if you are using the v4 signature', () => {
const warnSpy = spyOn(console, 'warn');
pipe.transform(123, 'USD', true);
expect(warnSpy).toHaveBeenCalledWith(
`Warning: the currency pipe has been changed in Angular v5. The symbolDisplay option (third parameter) is now a string instead of a boolean. The accepted values are "code", "symbol" or "symbol-narrow".`);
});
});
});
示例2: constructor
constructor(i18nService: I18nService, platformUtilsService: PlatformUtilsService,
tokenService: TokenService, apiService: ApiService,
private currencyPipe: CurrencyPipe) {
super(i18nService, platformUtilsService, tokenService, apiService);
// Support old price string. Can be removed in future once all translations are properly updated.
const thePrice = this.currencyPipe.transform(this.price, '$');
this.priceString = i18nService.t('premiumPrice', thePrice);
if (this.priceString.indexOf('%price%') > -1) {
this.priceString = this.priceString.replace('%price%', thePrice);
}
}
示例3: describe
describe('CurrencyPipe', () => {
var pipe: CurrencyPipe;
beforeEach(() => { pipe = new CurrencyPipe(); });
describe('transform', () => {
it('should return correct value for numbers', () => {
expect(pipe.transform(123)).toEqual('USD123.00');
expect(pipe.transform(12, 'EUR', false, '.1')).toEqual('EUR12.0');
expect(pipe.transform(5.1234, 'USD', false, '.0-3')).toEqual('USD5.123');
});
it('should not support other objects',
() => { expect(() => pipe.transform(new Object())).toThrowError(); });
});
});
示例4: describe
describe('CurrencyPipe', () => {
let pipe: CurrencyPipe;
beforeEach(() => { pipe = new CurrencyPipe('en-US'); });
describe('transform', () => {
it('should return correct value for numbers', () => {
expect(pipe.transform(123)).toEqual('$123.00');
expect(pipe.transform(12, 'EUR', 'code', '.1')).toEqual('EUR12.0');
expect(pipe.transform(5.1234, 'USD', 'code', '.0-3')).toEqual('USD5.123');
expect(pipe.transform(5.1234, 'USD', 'code')).toEqual('USD5.12');
expect(pipe.transform(5.1234, 'USD', 'symbol')).toEqual('$5.12');
expect(pipe.transform(5.1234, 'CAD', 'symbol')).toEqual('CA$5.12');
expect(pipe.transform(5.1234, 'CAD', 'symbol-narrow')).toEqual('$5.12');
expect(pipe.transform(5.1234, 'CAD', 'symbol-narrow', '5.2-2')).toEqual('$00,005.12');
expect(pipe.transform(5.1234, 'CAD', 'symbol-narrow', '5.2-2', 'fr'))
.toEqual('00 005,12 $');
expect(pipe.transform(5, 'USD', 'symbol', '', 'fr')).toEqual('5,00 $US');
expect(pipe.transform(123456789, 'EUR', 'symbol', '', 'de-at'))
.toEqual('€ 123.456.789,00');
});
it('should support any currency code name', () => {
// currency code is unknown, default formatting options will be used
expect(pipe.transform(5.1234, 'unexisting_ISO_code', 'symbol'))
.toEqual('unexisting_ISO_code5.12');
// currency code is USD, the pipe will format based on USD but will display "Custom name"
expect(pipe.transform(5.1234, 'USD', 'Custom name')).toEqual('Custom name5.12');
});
it('should not support other objects', () => {
expect(() => pipe.transform({}))
.toThrowError(
`InvalidPipeArgument: '[object Object] is not a number' for pipe 'CurrencyPipe'`);
});
it('should warn if you are using the v4 signature', () => {
const warnSpy = spyOn(console, 'warn');
pipe.transform(123, 'USD', true);
expect(warnSpy).toHaveBeenCalledWith(
`Warning: the currency pipe has been changed in Angular v5. The symbolDisplay option (third parameter) is now a string instead of a boolean. The accepted values are "code", "symbol" or "symbol-narrow".`);
});
});
});
示例5: if
transform(value: number, ...args: any[]): any {
let assetInfo = args.find(a => a instanceof Assets || a instanceof Object) as Assets;
let currency = args.find(a => typeof a === "string") as string;
let showCurrency = args.find(a => typeof a === "boolean");
if (showCurrency === undefined) {
showCurrency = true;
}
if (assetInfo && currency) {
let asset = assetInfo[currency] ? assetInfo[currency] :
(assetInfo['X' + currency] ? assetInfo['X' + currency] : null);
//(assetInfo['Z' + currency] ? assetInfo['Z' + currency] : null));
if (!asset && currency.startsWith('Z') && currency !== 'ZBT') {
return this.currencyPipe.transform(value, currency.substring(1, currency.length), true);
}
else if (!asset) {
return this.decimalPipe.transform(value, '1.5-5');
}
if (asset.assetClass === 'currency' && currency.startsWith('Z') && currency !== 'ZBT') {
return this.currencyPipe.transform(value, currency.substring(1, currency.length), true);
}
let displayDecimals = asset.displayDecimals.toString();
return this.decimalPipe.transform(value, '1.' + displayDecimals + '-' + displayDecimals);
} else if (currency) {
return this.currencyPipe.transform(value, currency.startsWith('Z') ? currency.substring(1, currency.length) : currency, true);
}
return this.decimalPipe.transform(value, '1.2-2');
}
示例6: it
it('should support any currency code name', () => {
// currency code is unknown, default formatting options will be used
expect(pipe.transform(5.1234, 'unexisting_ISO_code', 'symbol'))
.toEqual('unexisting_ISO_code5.12');
// currency code is USD, the pipe will format based on USD but will display "Custom name"
expect(pipe.transform(5.1234, 'USD', 'Custom name')).toEqual('Custom name5.12');
});
示例7: it
it('should return correct value for numbers', () => {
// In old Chrome, default formatiing for USD is different
if (browserDetection.isOldChrome) {
expect(normalize(pipe.transform(123))).toEqual('USD123');
} else {
expect(normalize(pipe.transform(123))).toEqual('USD123.00');
}
expect(normalize(pipe.transform(12, 'EUR', false, '.1'))).toEqual('EUR12.0');
expect(normalize(pipe.transform(5.1234, 'USD', false, '.0-3'))).toEqual('USD5.123');
});
示例8: getLastVolumeTo
getLastVolumeTo(): string {
if (this.tickerData.TOSYMBOL == 'USD') {
return this.currencyPipe.transform(this.tickerData.LASTVOLUMETO, this.tickerData.TOSYMBOL, true, '0.2-2');
// return "tickerData.PRICE | currency:tickerData.TOSYMBOL:true"
}
else {
let trade_pair_key: string = "USD_" + this.tickerData.TOSYMBOL;
return this.currencyPipe.transform(this.tickerData.LASTVOLUMETO, this.tickerData.TOSYMBOL, true) + ' ( ' +
this.currencyPipe.transform(this.tickerData.LASTVOLUMETO/this.cryptoCompareService.exchangeRates.get(trade_pair_key), 'USD', true, '0.2-2') + ' ) ';
}
}
示例9: currencyFmt
public currencyFmt( val) {
console.log( val);
let v = val.replace( /[^\d]/g,'');
v = (+v)/100;
console.log( v);
let x = this.currencyPipe.transform(v, 'USD', true, '1.2-2' ); // this.accountNumberFormat(value);
console.log( x);
return x;
}