2017-09-20 50 views
1

的第三個屬性:Angular2的toString不能得到這裏是我的代碼

import { Component } from '@angular/core'; 

@Component({ 
    selector: 'my-app', 
    template: ` 
    <h1>Hello {{name}}</h1> 
    <p><strong>Email:</strong> {{email}}</p> 
    <p><strong>Address:</strong> {{address.street}}, {{address.city}}, {{address.country}}.</p> 
    `, 
}) 
export class AppComponent { 
    name = 'Strahinja'; 
    email = '[email protected]'; 
    address = { 
    street: 'Boulevard of king Alexander', 
    city: 'Belgrade', 
    country: 'Serbia' 
    } 
    addressToString(): string { 
    return this.address.street + ', ' + this.address.city + ', ' this.address.country; 
    } 
} 

我想打印出下一個:Address: Boulevard of king Alexander, Belgrade, Serbia
我收到的輸出是Address: [object Object]理所應當。
我知道有一種方法可以通過下一次打印來打印所有數據:
Address: {{address.street}}, {{address.city}}, {{address.country}}
我知道有一種方法可以創建一個toString()方法,因爲在Java中有一種方法,我嘗試通過一些瀏覽網頁來完成此操作,但是我在最後一行的最後一個this上收到編譯錯誤,它接着說:';' expected. Unreachable code detected.
任何建議,傢伙?是否有可能只能在打字稿中得到2個屬性?

回答

2

嘗試改變

return this.address.street + ', ' + this.address.city + ', ' this.address.country; 

return this.address.street + ', ' + this.address.city + ', ' + this.address.country; 

你缺少一個 '+' 之間的 '' 和this.address.country

+0

前OMG,是的,我瞎了。對不起:/ 謝謝! –

+1

這一切都很好...有時我們只需要第二雙眼睛 –

2

難道我在這裏看到一個錯字?我認爲你缺少一個+this.address.country

return this.address.street + ', ' + this.address.city + ', ' this.address.country; 
+0

是的,我是盲人。對不起:/ 謝謝! –

相關問題