>  기사  >  웹 프론트엔드  >  Node.js의 모듈식 개발에 대해 이야기해 보겠습니다.

Node.js의 모듈식 개발에 대해 이야기해 보겠습니다.

藏色散人
藏色散人앞으로
2022-08-08 13:49:451265검색

이 글에서는 관심 있는 친구들이 참고할 수 있는 Node.js의 모듈식 개발을 소개합니다.

1. Node.js의 모듈식 개발

node.js의 모듈은 주로 내장 모듈, 타사 모듈, 사용자 정의 모듈의 세 가지 범주로 나뉩니다. [추천: node.js 동영상 튜토리얼]

2. Node 운영 환경에서 제공하는 내장 모듈

이러한 API는 모듈식으로 개발되었기 때문에 Node 운영에서 제공한다고 부르기도 합니다. 환경 API는 시스템 모듈입니다.

일반적으로 사용되는 내장 모듈에는 fs, os, path, EventEmitter, http가 있습니다.

1. 시스템 모듈 fs(파일 운영 체제)

//파일 읽기

fs.reaFile('파일 경로/파일 이름'[,'파일 인코딩'], 콜백);

fs.readFile('../index.html', "utf8", (err,data) => {
    if (err != null) { 
        console.log(data);
        return;
    }
    console.log('文件写入成功');
});

//동기화 코드 작성

console.log('start...')
var data = fs.writeFileSync('./abc.txt','hello')
console.log(data)
console.log('end...')

//비동기적으로 코드 작성

console.log('start...')
fs.writeFile('./hello.txt','hello world!',function(err){
    if(err) throw err
    console.log('success!')
})
console.log('end...')

2. 시스템 모듈 경로(path)

path.dirname() 경로 중 폴더를 나타내는 부분을 반환합니다.

path.extname() 경로의 확장자를 반환합니다.

3.events(이벤트 트리거)

events 모듈은 events.EventEmitter라는 하나의 개체만 제공합니다. EventEmitter의 핵심은 이벤트 트리거링 및 이벤트 리스너 기능을 캡슐화하는 것입니다.

require("events");를 통해 이 모듈에 액세스할 수 있습니다.

var events = require('events')

var emitter = new events.EventEmitter()

//绑定事件
emitter.on('abc', function(){
    console.log('abc事件执行了...')
})
//触发事件
emitter.emit('abc')

4.https(Hypertext Transfer Protocol)

구성 서버

var http = require('http')

//创建服务器对象
var app = http.createServer(function(req,res){
    res.write('<h1>hello</h1>')
    res.write('<ul><li>a</li><li>b</li><li>c</li></ul>')
    res.end()
})

//监听端口,开启服务
app.listen(8080, function(){
    console.log('server success!')
})

3. 사용자 정의 모듈

모듈 멤버 내보내기

module.exports = function() {
  // ...
}

모듈 멤버 가져오기

const 变量 = require('方法')

4.타사 모듈

O 기타 모듈 작성되고 특정 기능이 있으며 직접 사용할 수 있는 타사 모듈은 일반적으로 여러 파일로 구성되어 폴더에 배치되므로 패키지라고도 합니다.

위 내용은 Node.js의 모듈식 개발에 대해 이야기해 보겠습니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 csdn.net에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제