Ember переменная загрузки при каждой загрузке страницы

Я хочу переменную с именем "name" в моем маршрутизаторе или контроллере, которую я буду использовать в своем шаблоне hbs. Прямо сейчас я делаю это. Но get() не загружается, если я перехожу назад и снова нажимаю ссылку на текущую страницу. Он загружается только в первый раз, и если я обновляю страницу. Из-за этого значение имени в моей форме не перезагружается каждый раз, когда я захожу на страницу.

      #controller
      name: computed('model.name', {
        get() {
          return this.get('model.name');
        }
      })



      #.hbs
      {{input type = "text" value=name }}
      <button {{action 'update' model.id }}>Update Post</button> 


        #routefile
      import Route from '@ember/routing/route';
      import EmberObject, { computed } from '@ember/object';
      export default Route.extend({
      model(params) {
       return this.get('store').findRecord('post',params.post_id );
      }
      });

1 ответ

Вам нужно добавить set метод, в противном случае объявленное вами вычисляемое свойство будет переопределено значением входного значения (через {{input}} помощник).

  name: computed('model.name', {
    get() {
      return this.get('model.name');
    },
    set(key, value) {
      return value;
    }
  })
Другие вопросы по тегам