我尝试制作一个简单的web组件(使用webcomponents.js v 0.7.23)。该组件有一个方法(setTitre()
)。
如果我在启动时在我的HTML页面中调用此方法,Chrome就可以,但FF和IE表示该函数未定义。
如果我从控制台(document.querySelector('hello-world').setWho('new')
)调用此方法,则在所有浏览器中都可以。
答案 0 :(得分:2)
使用 webcomponentsjs polyfill,您需要在调用自定义元素方法之前等待WebComponentsReady
事件:
document.addEventListener( 'WebComponentsReady', function ()
{
document.querySelector('hello-world').setTitre()
} )
这是由于在使用非本机实现时异步升级自定义元素。