栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

在NodeJS中构造辅助函数的最佳方法

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

在NodeJS中构造辅助函数的最佳方法

为了阐明我对您的帖子的理解方式,我看到两个问题:

  • 我如何在文件中构造代码/方法,这些文件代表实用程序功能的类别
  • 如何将这些分类文件组织到一个较大的库中

类别内的构造方法

您可以仅将功能导出到以它们命名的文件中,而不是使对象(例如Twitter或Text)成为所有特定于类别的函数方法。由于您似乎正在传递要使用的数据,因此无需使某些空类的函数实例方法成为可能。

如果您的Twitter或Text使用模式通常具有要保持状态的类变量,并且您想实例化Text或Twitter对象以使用您的示例,那么我认为这是适当的。当我在项目中设置实用程序库时,通常是一堆导出的函数组成一个模块,而不是导出的javascript类。

提供一个由基于文本的实用程序功能组成的text.js文件的示例,如下所示:

module.exports = {    cleanText:function(text) {        // clean it and return    },    isWithinRange(text, min, max) {        // check if text is between min and max length    }}

或者,您可以通过以下方式进行操作:

exports.cleanText = function(text) {    // clean it and return}exports.isWithinRange = function (text, min, max) {    // check if text is between min and max length}

构建实用程序类别文件以构成更大的实用程序库

就组织实用程序方法而言,Luca的示例很好。我已经组织了一些类似的事情:

utils-module/    lib/        text.js  <-- this is the example file shown above        twitter.js    test/    index.js

在哪里index.js做类似

var textUtils = require('./lib/text');exports.Text = textUtils;

然后,当我想在节点API中使用util lib时,说一些用户模型,它就是:

var textUtils = require('path/to/lib').Text;function User() {}User.prototype.setBio = function(data) {    this.bio = textUtils.cleanText(data);}module.exports = User;

希望有帮助。当我第一次学习时,查看流行的,受人尊敬的库对了解经验丰富的node / javascript开发人员的工作方式很有帮助。那里有很多好(坏)的!



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/484915.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号