首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >聚合物1.1与阵列值的结合

聚合物1.1与阵列值的结合
EN

Stack Overflow用户
提问于 2015-10-08 20:37:39
回答 1查看 461关注 0票数 2

我有这样的表格

代码语言:javascript
复制
       <div class="warranty-part">
        <paper-input maxlength="4" name="warranty[0]" no-label-float label="1111" value="{{warranty0::input}}"></paper-input>
      </div>
      <div class="warranty-part">
        <paper-input maxlength="4" name="warranty[1]" no-label-float label="1111" value="{{warranty1::input}}"></paper-input>
      </div>
      <div class="warranty-part">
        <paper-input maxlength="4" name="warranty[2]" no-label-float label="1111" value="{{warranty2::input}}"></paper-input>
      </div>
      <div class="warranty-part">
        <paper-input maxlength="4" name="warranty[3]" no-label-float label="1111" value="{{warranty3::input}}"></paper-input>
      </div>

有四个不同的领域。这些输入值中的每一个都绑定到一个定义为.

代码语言:javascript
复制
   properties: {

    warranty0: {
      type: String,
      observer: 'onWarrantyChange0'
    },

     warranty1: {
      type: String,
      observer: 'onWarrantyChange1'
    },

     warranty2: {
      type: String,
      observer: 'onWarrantyChange2'
    },

     warranty3: {
      type: String,
      observer: 'onWarrantyChange3'
    }
  }

这很管用..。但是,更整洁的是能够绑定到每个字段的数组值来整理事物。

喜欢

代码语言:javascript
复制
properties: {

    warranty: {
      type: Array,
      value: ['','','',''],
      observer: 'onWarrantyChange'
    }
  }

但我就是想不出如何用聚合物来绑定一个数组的索引。通过阅读文档,我得到的印象是,像这样绑定到输入值会有效.

代码语言:javascript
复制
    value="{{warranty.0::input}}"

但事实并非如此。

有办法这样做吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-10-08 21:28:53

试试{{warranty.0}}{{warranty.1}}等。

但是,如果您更新了任何paper-inputvalue,则不会调用onWarrantyChange观察者,因为您需要一个特殊的*语法来通知数组中的属性更改(参见)。

代码语言:javascript
复制
properties: {
  warranty: {
    type: Array,
    value: ['111','222','333','444']
  }
},

observers: ['onWarrantyChange(warranty.*)'],

onWarrantyChange: function (changedWarranty) {
  console.log(changedWarranty);
}

请参阅此柱塞以供参考。

更新

看起来聚合物可能会被值类型字符串文字的绑定所混淆。所以一个简单的解决办法是定义一个数组,其中包含4个对象,如下所示-

代码语言:javascript
复制
value: [ { value: '' }, { value: '' }, { value: '' }, { value: '' } ]

这些绑定就会变成-

value="{{warranty.0.value}}"value="{{warranty.1.value}}"等。

看看这个新的柱塞

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33025527

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档