在 Polymer 1.0 中,可以检测 polymer 元素是否由构造函数创建,该函数在创建元素时触发,名为factoryImpl()。
我不想在 Polymer 2.0 中做同样的事情,如果我通过构造函数创建一个元素,应该触发一个标准函数并执行一些操作。有人以前这样做过并且可以给出这样做的提示吗?
非常感谢
最佳答案
您可以使用构造函数:
class TestEle extends Polymer.Element { static get is() { return 'test-ele'; } constructor() { super() console.log('created') } //...
每当您创建 TestEle 时,您都应该看到“已创建”记录
<test-ele> </test-ele> // created or document.createElement('test-ele') // created or new TestEle() // created
//根据下面的评论进行编辑。
我找不到任何有关 2.0 中旧版factoryImpl 等效项的信息。不过,您可以尝试一种解决方法。
class TestEle extends Polymer.Element { static get is() { return 'test-ele'; } constructor(c) { super() console.log('created') if(c) { console.log('created using constructor') } } ...
<test-ele> </test-ele> // created or document.createElement('test-ele') // created or new TestEle(true) // created and created using constructor
关于javascript - Polymer 2.0 中的工厂实现,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46115768/