小编Ran*_*cid的帖子

如何在Polymer 1.0中调用默认行为的方法?

在聚合物1.0中,我有一个定义属性和方法的行为脚本:

<script>
dataBehavior = {
  properties: {
    data: {
      type: Array,
      value: null,
      observer: 'dataChanged'
    }
  },
  dataChanged: function(newValue, oldValue) {
    console.log('default stuff');
  }
};
</script>
Run Code Online (Sandbox Code Playgroud)

以及使用该行为的组件:

<dom-module id="my-module">
  <template>
  </template>
  <script>
  Polymer({
    is: "my-module",
    behaviors: [dataBehavior],
    dataChanged: function(newValue, oldValue) {
      // How to call the dataChanged method from dataBehavior?
      // this.super.dataChanged(); <- don't works!
      console.log('custom stuff');
    }
  });
  </script>
</dom-module>
Run Code Online (Sandbox Code Playgroud)

当我更改数据属性时,执行的方法来自my-module,因此它会生成"自定义内容".如果我删除my-module中的dataChanged方法,则执行"default stuff".

如何执行默认行为的方法和组件的方法?

如果可能,我不想将代码从"dataBehavior.dataChanged"复制到"my-module.dataChanged".我想在组件的方法中调用行为的方法; 我可以使用"超级"之类的东西来引用行为脚本吗?

非常感谢你的答案!

behavior polymer-1.0

2
推荐指数
1
解决办法
2714
查看次数

标签 统计

behavior ×1

polymer-1.0 ×1