繁体   English   中英

导入类的函数未定义

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM