Двусторонняя привязка Polymer 1.0 с текстовой областью

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

<dom-module id="my-element">
  <style>
  </style>

  <template>
    <button on-click="click">Click me!</button>
    <textarea>{{element}}</textarea>
  </template>
</dom-module>

<script>
  Polymer({
    is: "my-element",

    properties: {
      element: {
        type: String,
        value: "Default value",
        notify: true
      }
    },

    click: function() {
      console.log(this.element);
    }
  });
</script>

В текстовом поле отображается «Значение по умолчанию». Когда я изменяю это значение, а затем нажимаю кнопку, консоль по-прежнему выводит Default value вместо текста, который я только что набрал. Что я здесь сделал не так?


person Nam Thai    schedule 28.08.2015    source источник
comment
возможный дубликат двухсторонней привязки Polymer.js к значению textarea   -  person Günter Zöchbauer    schedule 29.09.2015


Ответы (1)


Вы должны использовать <iron-autogrow-textarea>, чтобы разрешить привязку данных.

<dom-module id="my-element">
  <style>
  </style>

  <template>
    <button on-click="click">Click me!</button>
    <iron-autogrow-textarea bind-value="{{element}}"></iron-autogrow-textarea>
  </template>
</dom-module>

<script>
  Polymer({
    is: "my-element",

    properties: {
      element: {
        type: String,
        value: "Default value",
      }
    },

    click: function() {
      console.log(this.element);
    }
  });
</script>
</dom-module>

Документация находится здесь.

person Flavio Ochoa    schedule 28.08.2015