【发布时间】:2017-10-13 21:20:03
【问题描述】:
是否可以在 JS 中将类方法从类中提取出来?原谅我,我是函数式范式,所以使用 React 迫使我使用类和 this 关键字(到目前为止)。我的一些组件变大了,我不希望这样。
我在 Google 上找不到任何关于提取方法或模块化类的信息。
有没有一种方法可以让我说“从 './some_method.js' 获取这个方法并像在这个文件和类中声明它一样使用它”而无需进行太多侵入性更改?
如果做不到这一点,我会假设让它们都具有功能并将this 传递给它们。然而,这感觉很脏。
我很感激一些关于我需要查看哪些关键字的指导,或者只是如何将方法移出,这样我就没有需要 20 分钟才能找到的 2000 个行文件
toggleFullMenu() {
this.setState({ menuOpen: !this.state.menuOpen})
}
无需按 CTRL+F。这就是我的动力。
我还想知道是否有任何与构造函数相关的专业提示。来自类继承范例的任何警告?我只是希望这些方法单独存在于单独的文件中,但我不知道我在寻找什么。我从没见过人们谈论这个。
编辑,我刚刚在 MDN 中找到了这个:
带有扩展的子类
extends 关键字在类声明或类表达式中用于创建一个类作为另一个类的子类。
来源:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Classes
class Dog extends Animal {
speak() {
console.log(this.name + ' barks.');
}
}
这是我需要的吗?我将如何去拉一堆扩展?不过我不想要一个子类,这听起来不像我在描述的那样。
【问题讨论】:
标签: javascript node.js reactjs react-native