Aplicación de comportamientos con JS Mixins en Polymer 2
Quiero un elemento personalizado que estoy definiendo para tener elPolymer.IronScrollTargetBehavior
en Polímero 2.
En el Polímero 1, esto se puede hacer agregándolo albehaviors
formación:
Polymer({
is: 'my-element',
behaviors: [Polymer.IronScrollTargetBehavior]
});
En el polímero 2guía de actualización, dice que deberías:
Implemente "comportamientos" comomixins que devuelven expresiones de clase.
En el artículo vinculado, explica cómo puede usar la siguiente sintaxis para mixins:
let MyMixin = (superclass) => class extends superclass {
foo() {
console.log('foo from MyMixin');
}
};
class MyClass extends MyMixin(MyBaseClass) {
/* ... */
}
Principalmente entiendo lo que está sucediendo aquí (aunque encuentro que la sintaxis mixin es difícil de entender), y puedo hacer que el código de muestra funcione.
Lo que no he podido hacer es aplicar este concepto aPolymer.IronScrollTargetBehavior
y crea un mixin para ello. Dado que ese comportamiento ya está definido como un objeto, no sé dónde encajarlo.
Entonces, ¿cómo implemento la combinación adecuada en este escenario, o si estoy en el camino equivocado, cómo aplico uno de los comportamientos de Polymer definidos a mi elemento personalizado en Polymer 2?