2015-07-01 2 views
1

У меня есть простой элемент:Показать одно из двух значений в шаблоне

<dom-module id="example-element"> 
    <template> 
    <span>{{showAorB??}}</span> 
    </template> 
    <script> 
    Polyemer({ 
    is: 'example-element', 
    parameters: { 
     a: String, 
     b: String 
    } 
    }); 
</script> 
</dom-module> 

Я использую это так:

<example-element a="{{a}}" b="{{b}}"> 

В моем сценарии, один из a или b всегда undefined ,

Что меня смущает как реализовать {{showAorB}} часть. По сути, я хочу что-то вроде a || b.

Что я пробовал:

  • вычислен свойства/функции ({{showAorB(a,b)}}) - не работает, потому что она ждет как a и b быть !== undefined, которые, в моем случае, означает, что она ждет навсегда
  • <span hidden$='{{!a}}'>{{a}}</span><span hidden$='{{!b}}'>{{b}}</span> - это просто неудобно

Что такое правильный способ осуществить это?

ответ

1

Используйте функцию синтаксис ({{showAorB(a,b)}}), но в вашем properties декларации (вы показали parameters, но это должно быть properties) дают a и b falsey (но не undefined) значения. Как так:

properties: { 
    a: { 
    value: '' 
    }, 
    b: { 
    value: '' 
    } 
}, 

Живой пример: http://jsbin.com/jazava/edit?html,output

Смежные вопросы