javascript - 我怎么能把一个javascript类分成几个文件?
问题描述
例如,假设有一个文件包含一个类。
// a.js -> constructor, function1, function2
const AClass = class {
constructor() {}
function1() {}
function2() {}
}
当 function1 和 function2 变得太长时,我想将它们分开到另一个文件中。
// a.js -> constructor
// b.js -> function1
// c.js -> function2
我可以在 JavaScript 中执行此操作吗?我不想像下面那样做。
// a.js
const fn1 = require("./b.js");
const AClass = class {
constructor() {}
function1() {fn1()}
}
解决方案
你可以使用JS Prototype 的 chain。基本上拥有尽可能多的文件,只需使用extend
并拥有一个带有function1
and的 mixins 文件function2
,但这确实效率低下。
此外,您可以只使用原型链并随时向其中添加函数,例如:
class A {
say() {console.log("hey!")}
}
var foo = new A
foo.say() // hey!
A.prototype.yell = function(con) {console.info(con)}
foo.yell("hmmm...") // hmmm...
您可以在任何您想要的文件中执行此操作。
推荐阅读
- asp.net-core - 即使在 .NetCore API 中启用 CORS 后也会出现 CORS 错误
- applescript - 查找并替换 AppleScript 不写入文件
- html - 用户使用电子邮件而不是用户名登录。问题:通过电子邮件但检查用户名
- excel - 通过标题识别列并将数据粘贴到匹配的列中
- amazon-web-services - 如何读取 AWS CLI 命令响应
- python - Python:为什么我不能对集合进行算术运算
- html - 如何在引导程序中设置导航链接到当前页面
- linux - 如何使用 AWK 从文件中连续输出行
- swift - 有没有办法改变 UITabBar 或 UITabBarItem 中的图像位置?
- python - AWS - 打印 lambda 启动的实例的详细信息