在Angular 2中是否有类似于AngularJS $ interpolate的东西?
我想实现这个(在JS / TS代码中)但是使用Angular2 +:
编辑
实现的主要目标是$插入字符串而不了解在字符串内部使用的变换管道进行插值。
JS
var myApp = angular.module('myApp',[]);
myApp.controller('myCtrl', myCtrl);
var JsonTranslation = {
"txt1": "Cash {{ value | currency: 'USD'}}",
"txt2": "Number {{ value | number: 3}}"
};
function myCtrl($scope, $interpolate) {
$scope.txt1 = $interpolate(JsonTranslation.txt1)({value: 50000});
$scope.txt2 = $interpolate(JsonTranslation.txt2)({value: 50000.123456});
}
HTML
<div ng-controller="myCtrl">
<div>{{txt1}}</div> <!-- Cash USD50,000.00 -->
<div>{{txt2}}</div> <!-- Number 50,000.123 -->
</div>
工作jsfiddle http://jsfiddle.net/3nf7cza4/
是:
`Cash ${this.currency.transform(value, 'USD')}`
其中this.currency
是您要使用的注入管道,transform
是管道中的功能,可以转换您的值。
我假设currency
是一个角管(不记得是否是),所以你只需要像这样注入它:
import {CurrencyPipe} from '@angular/core';
constructor(private currency: CurrencyPipe) {}