我一直在阅读关于Web组件(原生,没有Polymer)的教程。我看到了两种注册组件的方式,我有点困惑该用哪种。对于第二种方式,在vscode中实际上会收到一个TypeScript错误:[ts] Property 'registerElement' does not exist on type 'Document'. Did you mean 'createElement'?
/**
* App
*/
export class App extends HTMLElement {
constructor() {
super();
}
connectedCallback() {
this.innerHTML = this.template;
}
get template() {
return `
<div>This is a div</div>
`;
}
}
// What is the difference between these two methods?
window.customElements.define('vs-app', App);
document.registerElement('vs-app', App);
registerElement
已被弃用,请勿使用。 - jpaugh