我想要一个我定义为Polymer.IronScrollTargetBehavior
在 Polymer 2 中的自定义元素。
在 Polymer 1 中,这可以通过将其添加到behaviors
数组中来完成:
Polymer({
is: 'my-element',
behaviors: [Polymer.IronScrollTargetBehavior]
});
在 Polymer 2 upgrade guide中,它说您应该:
将“行为”实现为返回类表达式的混合。
在链接的文章中,它解释了如何为 mixins 使用以下语法:
let MyMixin = (superclass) => class extends superclass {
foo() {
console.log('foo from MyMixin');
}
};
class MyClass extends MyMixin(MyBaseClass) {
/* ... */
}
我主要了解这里发生的事情(尽管我发现很难理解 mixin 语法),并且我可以让示例代码正常工作。
我无法做的是将这个概念应用于Polymer.IronScrollTargetBehavior
,并为它创建一个 mixin。由于该行为已经被定义为一个对象,我不知道该放在哪里。
那么,如何在这种情况下实现正确的 mixin,或者如果我走错了路,如何将定义的 Polymer 行为之一应用于 Polymer 2 中的自定义元素?