为什么下面的例子没有输出“hello world”?相反,我得到:TypeError:_base2.default.test不是函数(it正在翻译与巴别塔)
file1.js
import Example from './file2'; console.log(Example.test());
字符串
file2.js
export default class Example { test() { console.log('hello world'); } }
型
gg0vcinb1#
您只是导入类,而不是创建类的示例尝试
var myInstance = new Example() myInstance.test()
cxfofazt2#
如果你想把一个方法作为一个类方法调用(不创建一个对象示例),你可以尝试静态方法。您可以将file2.js更改为,
export default class Example { static test() { console.log('hello world'); } }
字符串然后使用file1.js中的类名作为
型如果你想把它作为一个示例方法调用,请参考James Maa答案。
2条答案
按热度按时间gg0vcinb1#
您只是导入类,而不是创建类的示例
尝试
字符串
cxfofazt2#
如果你想把一个方法作为一个类方法调用(不创建一个对象示例),你可以尝试静态方法。
您可以将file2.js更改为,
字符串
然后使用file1.js中的类名作为
型
如果你想把它作为一个示例方法调用,请参考James Maa答案。