[英]Function from imported class is undefined
我正在尝试首次使用ES6类设置应用程序,但是很难从导入的类中调用函数。
要导入的类:
import {BaseElement} from './ui/base-element.js';
export class Product extends BaseElement {
constructor() {
super()
this.toggleAttributes();
}
// show more attributes toggle
toggleAttiributes () {
const toggleButton = document.querySelectorAll('.smrt42-toggle-attr')
document.addEventListener('click', (e)=>{
const t = e.target;
if(t.className.indexOf('smrt42-toggle-attr') !== -1) {
e.preventDefault()
let productAttrs = t.parentNode.previousElementSibling
if(t.classList.contains('smrt42-toggle-attr-more')) {
productAttrs.classList.add('smrt42-attr-open')
} else if (t.classList.contains('smrt42-toggle-attr-less')) {
productAttrs.classList.remove('smrt42-attr-open')
}
}
})
}
}
在此处导入类:
import {BaseElement} from './ui/base-element.js';
import {Product} from './product.js';
export class Content extends BaseElement {
constructor() {
super()
let p = new Product() ;
}
}
这会this.toggleAttributes is not a function
控制台错误this.toggleAttributes is not a function
您输入了错误的函数名称。 在声明中,您有一个名为toggleAttiributes
的名称,但是您将其称为toggleAttributes
。 i
在这里
toggleAttiributes
---------^-------
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.