2017-02-03 56 views
1

我在一些资料中拉我的角2的应用程序,而现在这个工程:数据绑定如果没有角2有逗号项目间应用

  <div class="contact-container"> 
       <contact [id]="record._id" 
           [type]="'staff'" 
           [title]="[record.name.first, record.name.last]"></contact> 
      </div> 

由此可见,虽然,我不希望在'record.name.first'和'record.name.last'之间有“,”,因为这是它在视图中出现的方式。但是,如果没有逗号,我不确定如何让这些信息无误地显示,因为它们代表从我的API /数据库中拉入的两个不同字段。

有没有另一种方法可以做到这一点,打印姓和名,但没有介于两者之间的字符?

我在我的组件使用“吸气”试过了,是这样的:

public get fullName(): string { 
    return !this.record.name.first ? null : `${this.record.name.first} ${this.record.name.last}`; 
} 

...但是当我尝试应用,像这样它不工作:

  <div class="contact-container"> 
       <contact [id]="record._id" 
           [type]="'staff'" 
           [title]="[record.fullName]"></contact> 
      </div> 

我在这里错过了什么?

+0

它应该是'[title] =“record.fullName”'? –

回答

2

你可以用好老的字符串连接:

<div class="contact-container"> 
    <contact [id]="record._id" 
       [type]="'staff'" 
       [title]="record.name.first + ' ' + record.name.last"></contact> 
</div> 

你消气可能不起作用,因为它是不record您组件的属性。您是否尝试过:

<div class="contact-container"> 
    <contact [id]="record._id" 
       [type]="'staff'" 
       [title]="fullName()"></contact> 
</div> 
+0

令我惊讶的是,您的第一条建议奏效了。那谢谢啦!我有点惊讶它的工作,因为我想我需要通过字符串插值传递值。我不认为直接字符串连接会起作用。但它确实!再次感谢。 – Muirik

0

我会建议你使用的方法

<div class="contact-container"> 
     <contact [id]="record._id" 
       [type]="'staff'" 
       [title]="getFullName(record.name.first, record.name.last)"></contact> 
</div> 

你的方法将作为

getFullName(firstName:string,lastName:string) 
    { 
    return firstName + lastName; 
    } 

LIVE DEMO

0

很多,很多简单的,你已经想出了答案。只需绑定到fullName()函数。

<div class="contact-container"> 
       <contact [id]="record._id" 
           [type]="'staff'" 
           [title]="fullName()"></contact> 
      </div>