Node自定义模块

每一个nodejs文件就是一个模块,每一个模块就是一个nodejs文件,一般这个模块会返回一个对象,这个对象包含了这个模块的所有操作方法和属性
现在自己封装一个自定义的模块,使用箭头函数

let http = require('http')
let start = () => {
    let server = http.createServer((req, res) => {
        res.writeHead(200, {'content-type': 'text/html;charset=UTF-8'})
        res.write('这是自定义模块启动!')
        res.end()
    })
    server.listen(9999)
    console.log('server run at http://127.0.0.1:9999')}

exports.start = start

然后再创建一个js文件,就想引入http模块一样引入我们刚才自定义的模块,并调用它

let server = require('./setting')
server.start()

然后再终端输入命令行:node node2.js,然后再浏览器端打开127.0.0.1:9999

原文地址:https://www.cnblogs.com/zjh-study/p/10644350.html

时间: 2024-11-12 16:16:53

Node自定义模块的相关文章

node自定义模块的路径查找

自定义模块指的是非核心模块,也不是路径形式的标识符.它是一种特殊的文件模块,可能是一个文件或者包的形式.这类模块的查找是最费时的,也是所有方式中最慢的一种. 模块路径是Node在定位文件模块的具体文件时制定的查找策略,具体表现为一个路径组成的数组.关于这个路径的生成规则,我们可以手动尝试一番. 创建test.js文件,其内容为 console.log(module.paths); .将其放到任意一个目录中然后执行 node test.js . 在Linux下,你可能得到的是这样一个数组输出: [

如何发布一个自定义Node.js模块到NPM(详细步骤)

咱们闲话不多说,直接开始! 由于我从没有使用过MAC,所以我不保证本文中介绍的操作与MAC一致. 文章开始我先假定各位已经在window全局安装了Node.js,下面开始进行详细步骤介绍: 本文本着,以极少的文字说明以及极少的代码书写为原则来给大家演示! 文章中上传的模块不具备任何意义! 一.封装node.js模块时的必须项 1.创建package.json 每一个完整封装的node模块,必须含有一个参数明确的package.json文件! 以下为package.json的最精简配置: { "n

Zepto自定义模块打包构建

文章转自 http://www.chengxuyuans.com/web_technology/zeptojs-build.html zepto.js 是个好东西,遵循 jQuery API,但比 jQuery 小巧很多,很多移动web开发者都用它 不过,官网下载的默认构建包仅包含 zepto event ajax form ie 这5个模块(版本为1.1.6) 连触摸事件 touch 模块都没,还有能让 ajax 提供 promise 接口的 callbacks 和 deferred 模块也没

深入浅出node(2) 模块机制

一)CommonJs 1.1CommonJs模块定义 二)Node的模块实现 2.1模块分类 2.2 路径分析和文件定位 2.2.1 路径分析 2.2.2 文件定位 2.3 模块编译 一) CommonJs  在CommonJs的官网上写着这样一句话 javascript:not just for browsers any more  CommonJs是一种规范,它涵盖了模块.二进制.Buffer.文件系统.包管理等,node就是借鉴了CommonJs的Modules规范实现了一套非常易用的模块

自定义模块

自定义模块 模块由什么组成 npm 如何发布自己的模块 常见的命令: require -- 引入模块 exports -- 输出模块 (想对外输出东西时,必须加上exports) module.exports -- 批量输出模块 require 1.有'./' 从当前目录中招 2.没有'./' 先从系统模块找,再从node_modules中找 所以,我们引用自己写的模块时,一定要写成'./myModule.js'的样式(和系统模块区分开,否则找不到). 提示:有个偷懒的方法,就是引用模块的时候,

Node.js 模块机制及常见面试问题解答

Node.js 模块机制采用了 Commonjs 规范,弥补了当前 JavaScript 开发大型应用没有标准的缺陷,类似于 Java 中的类文件,Python 中的 import 机制,Node.js 中可以通过 module.exports.require 来导出和引入一个模块. 在模块加载机制中,Node.js 采用了延迟加载的策略,只有在用到的情况下,系统模块才会被加载,加载完成后会放到 binding_cache 中. 面试指南 require的加载机制?,参考:模块加载机制 modu

自研模块加载器(一) 模块系统概述与自定义模块规范书写规定

模块系统概述 CommonJs/AMD/CMD/ES6 Modules 什么是模块化? 模块化就是把系统分离成独立的功能的方法,需要什么功能,就加载什么功能 当一个系统越来越复杂时候,我们会遇到这些问题 1. 命名冲突 2. 文件依赖 使用模块化开发可以避免以上问题,并提升开发效率 1. 可维护性 2. 可复用性 在生产角度,模块化是一种生产方式,这种生产方式效率高,维护成本低. 模块化开发演变 1. 全局函数 早期开发中,将重复的代码封装成函数,将多个函数放在一个文件中. 缺点: 污染全局变量

Python中引用自定义模块

学习了一小段时间的Python,始终停滞在简单的语法上,不能真正体会到Python的强大之处.今天学习了自定义模块的引用方法.当引用模块时,编译器会先在当前目录,接着去sys.path.Python的安装目录去寻找你引用的模块,如果没有的话,就会报错. 第一种情况,你的模块和你要使用的模块在同一目录下.Hello.py是一个模块,里面有一个打印Hello, World的方法Hello().test.py是一个测试程序,它将引用Hello.py中的hello()方法.因为它和模块在同一目录,所以可

nginx自定义模块编写-根据post参数路由到不同服务器

nginx可以轻松实现根据不同的url 或者 get参数来转发到不同的服务器,然而当我们需要根据http包体来进行请求路由时,nginx默认的配置规则就捉襟见肘了,但是没关系,nginx提供了强大的自定义模块功能,我们只要进行需要的扩展就行了. 我们来理一下思路,我们的需求是: nginx根据http包体的参数,来选择合适的路由 在这之前,我们先来考虑另一个问题: 在nginx默认配置的支持下,能否实现服务器间的跳转呢?即类似于状态机,从一个服务器执行OK后,跳转到另一台服务器,按照规则依次传递