Эмбер вычисляется во входном значении каждого цикла

У меня есть элемент ввода на Ember, в то время как значение приходит из каждого условия

{{#each items as |item|}}
        <div class="form-group">
          <label class="col-sm-3 control-label">Judul {{item.no}}</label>
          <div class="col-sm-9 input-group">
            {{input class="form-control" value=item.title placeholder="Tambah judul" type="text"}}
            <span class="input-group-btn">
              <a class="btn btn-default remove_detail" type="button" onclick={{action 'decreaseTitle'}}><i class="fa fa-times"></i></a>
            </span>
          </div>
        </div>
{{/each}}

я просто хочу "посмотреть", пока ввод в value=item.title изменился по сравнению с вычисленным углем. как это сделать?

2 ответа

Решение

Пожалуйста, см. Следующий тиддл для иллюстрации определения вычисляемого свойства, которое зависит от свойства элемента в массиве. Ты можешь проверить application.js контроллер.

Ember.computed('items.@each.title', function(){...})

делает трюк для вас.

Если вы хотите динамически наблюдать за чем-то глубоко внутри массива, лучше обернуть эти логики компонентом:

{{#each items as |item|}}
        <div class="form-group">
          <label class="col-sm-3 control-label">Judul {{item.no}}</label>
          <div class="col-sm-9 input-group">
            {{my-input item=item}}
            <span class="input-group-btn">
              <a class="btn btn-default remove_detail" type="button" onclick={{action 'decreaseTitle'}}><i class="fa fa-times"></i></a>
            </span>
          </div>
        </div>
{{/each}}

Вот, my-input будет ваш компонент, имеющий эти логики и в файле компонента.js,

computedProperty: Ember.computed('item.title', {
  //your logics goes here...
};

и в файле шаблона компонента,

{{input class="form-control" value=item.title placeholder="Tambah judul" type="text"}}

и любая другая логика, которая должна быть связана, может быть реализована в самой области действия компонента


@rakwaht, item.title не нужно заключать в фигурные скобки, так как он находится внутри другого помощника (вход)

Другие вопросы по тегам