級聯我在我的打字稿三班變量:打字稿:試圖增加兩個變量,但得到的兩個
A:number;
B:number;
C:number;
在課堂上的另一部分我儘量讓另外兩個變量A和B:
this.C = this.A+this.B; // A =20 and B = 50;
,我在HTML模板
<span>{{C}}</span>
我的問題是顯示C,而不是獲得兩個變量的加法(20+50=70)
我得到了連接(2050)!
有人可以幫我嗎?
UPDATE:
這裏是確切的代碼部分,其導致的問題:
goTo(page:number,type:script) {
//
this.pageFirstLineNumber = page;
this.pageLastLineNumber = page + this.LINE_OFFSET; //concatenation!!
}
注意pageLastNumber被聲明爲數字型,LINE_OFFSET被奧斯陸號碼型,i已經找到了解決這個問題,但打字稿編譯器輸出錯誤(禁止評估):
////
....
this.pageFirstLineNumber = eval(page.toString()); // now It works !!
this.pageLastLineNumber = page + this.LINE_OFFSET; //concatenation!!
UPDATE
這裏是LINE_OFFSET變量的聲明:
private _calculateOffset(fontSize: number) {
let linesDiff = (fontSize * 27)/14;
let lines:number = 27 - (linesDiff - 27);
this.LINE_OFFSET = Math.floor(lines);
if (fontSize >= 17 && fontSize <= 20) {
this.LINE_OFFSET += (Math.floor(fontSize/3) - 2);
}
if (fontSize > 20 && fontSize <= 23) {
this.LINE_OFFSET += (Math.floor(fontSize/2) - 2);
}
if (fontSize > 23 && fontSize <= 25) {
this.LINE_OFFSET += (Math.floor(fontSize/2));}
if (fontSize > 25 && fontSize <= 27) {
this.LINE_OFFSET += (Math.floor(fontSize/2) + 1);
}
if (fontSize > 27 && fontSize <= 30) {
this.LINE_OFFSET += (Math.floor(fontSize/2) + 4);
}
}
請添加到您的問題,您賦值A''和'B' –
這沒有什麼區別這些屬性是如何聲明的一部分,如果在運行時你得到一個字符串,那麼它是一個字符串,無論它們是否被聲明爲數字。如何分配「this.LINE_OFFSET」?另外,不要使用'eval',使用'parseInt'或'parseFloat'或'Number' –