Javascript 角度模板文字:将字符串转换为数字后的加法变成串联
我正在开发一个基于Angular 4的计费应用程序。我不得不改变我应用的逻辑。但当我做出改变时,一切都被打破了。我深入研究了一下,发现在模板中将字符串转换为整数后的加法变成了串联 这是在普通JavaScript中Javascript 角度模板文字:将字符串转换为数字后的加法变成串联,javascript,angular,angular2-template,Javascript,Angular,Angular2 Template,我正在开发一个基于Angular 4的计费应用程序。我不得不改变我应用的逻辑。但当我做出改变时,一切都被打破了。我深入研究了一下,发现在模板中将字符串转换为整数后的加法变成了串联 这是在普通JavaScript中 100 + +"28" 将是128 console.log(100++“28”)我只能假设 i.gst是数据中的字符串,这意味着您需要控制器/组件上的附加方法将其转换为整数或浮点 我已经使用了您的plunker并添加了一个数据属性和相应的转换方法 //our root app c
100 + +"28"
将是128
console.log(100++“28”)代码>我只能假设
i.gst
是数据中的字符串,这意味着您需要控制器/组件上的附加方法将其转换为整数或浮点
我已经使用了您的plunker并添加了一个数据属性和相应的转换方法
//our root app component
import {Component, NgModule, VERSION} from '@angular/core'
import {BrowserModule} from '@angular/platform-browser'
@Component({
selector: 'my-app',
template: `
<div>
<h2 *ngFor="let i of data">Hello {{100+getNumber(i.gst)}}</h2>
<h2>Hello {{100+ (+"28")}}</h2>
<h2>Hello {{(100+ (+"28"))}}</h2>
</div>
`,
})
export class App {
name:string;
constructor() {
this.name = `Angular! v${VERSION.full}`
}
// data array
data = [
{gst: "28"},
{gst: "32"}
];
// method to convert string to float
getNumber(string) {
return parseFloat(string);
}
}
@NgModule({
imports: [ BrowserModule ],
declarations: [ App ],
bootstrap: [ App ]
})
export class AppModule {}
//我们的根应用程序组件
从“@angular/core”导入{Component,NgModule,VERSION}
从“@angular/platform browser”导入{BrowserModule}
@组成部分({
选择器:“我的应用程序”,
模板:`
你好{{100+getNumber(i.gst)}
你好{{100+(++“28”)}
你好{(100+(++“28”)}
`,
})
导出类应用程序{
名称:字符串;
构造函数(){
this.name=`Angular!v${VERSION.full}`
}
//数据阵列
数据=[
{gst:“28”},
{gst:“32”}
];
//方法将字符串转换为浮点
getNumber(字符串){
返回parseFloat(字符串);
}
}
@NGD模块({
导入:[BrowserModule],
声明:[App],
引导:[应用程序]
})
导出类AppModule{}
谢谢,戴尔,它正在工作。我已经尝试了parseInt内联,即{{parseInt(I.gst)}}
,但它产生了错误_co.parseInt不是一个函数。但是一个专门的功能完成了这项工作。谢谢你的回答