0
爲什麼這項工作:<option disabled={{option.isSelected}}>
但並不是這樣:<option selected={{option.isSelected}}>
龍版本:
這更多的是關於我學習Ember如何工作,而不是讓它工作,因爲已經有很多實例。
我想在選擇菜單中設置默認選擇的選項。看起來有這樣做的不同方式,推薦的方法正在改變。
我正在Ember 1.13.11工作,但想要兼容Ember 2.0。
我還沒有找到與Ember 2.0兼容的方法,它不涉及selected
屬性的模板助手。我可以創建一個真/假值作爲控制器上的屬性。我知道我做得很對,因爲disabled
正常工作。爲什麼這隻會失敗select
?
模板調用:
{{version-details item=version status=version.status}}
組件控制器:
import Ember from 'ember';
export default Ember.Component.extend({
tagName: 'select',
options: Ember.computed('status', function() {
var statusOptions = ['beta', 'current', 'future', 'retired-beta', 'retired', 'unknown'];
var selected = this.get('status');
var optionsData = [];
statusOptions.forEach(function(status){
var isSelected = (selected == status);
optionsData.push({ status: status, isSelected: isSelected });
})
return optionsData;
}),
setAction: '',
});
組件:
{{#each options as |option|}}
<option selected={{option.isSelected}}>{{option.status}}</option>
{{/each}}
適合我。我通過的狀態成爲選定的值。 http://emberjs.jsbin.com/lezulo/2/edit?html,js,output – blessenm
我花了很多時間撞到了燼挑選,現在只需要使用x選擇https://github.com/ thefrontside/emberx選。 –
@blessenm唉!感謝yoooooou。我想知道我是否遇到了所選默認和瀏覽器之間的某種衝突,並且有助於記住我上次查看過的內容。給它一個硬刷新,現在它工作。 –