Node.js 내 장 된 모듈 과 사용자 정의 모듈 의 실현

Commonjs
  • Commonjs 는 nodejs 의 사용자 정의 모듈
  • Commonjs 규범 의 제 기 는 자바 script 에 표준 적 인 결함 이 없 는 것 을 보완 하고 백 엔 드 언어 와 유사 한 표준 라 이브 러 리 를 제공 합 니 다.즉,comonjs 는 모듈 화 된 기준 이 고 nodejs 는 comonjs 모듈 화 된 실현 입 니 다.nodejs 에 서 는 http,url,fs 등 을 제외 하고 모두 nodejs 내 장 된 모듈 로 직접 사용 할 수 있 습 니 다.
  • comonjs 에서 사용자 정의 모듈 의 실현:
  • nodejs 에서 공공 기능 을 단독 js 파일 로 추출 하여 모듈 로 하고 외부 에 서 는 접근 할 수 없습니다(백 엔 드 와 유사 한 개인 속성 과 방법).모듈 을 사용 하려 면 모듈 에서 exports 나 module.exports 를 통 해 속성 이나 방법 을 노출 해 야 합 니 다.필요 한 모듈 에 require 도입 모듈 을 사용 합 니 다.

  • 2.모듈 내 보 내기 두 가지 방안
    방안 1
    
    let str={};
    module.exports=str;
    방안 2
    
    let str={};
    exports.A=str;
    3.사용자 정의 모듈 쓰기
    common.js
    
    // node             
    //         
    let str={};
    module.exports=str;
    exports.A=str;
    
    //        require("")    
    let todo=require("./todo");//      
    console.log(todo);
    
    
    todo.js
    
    module.exports={
       name:"  ",
       sleep:function(){
           console.log("  ");
       }
    }
    
    혹은
    
    module.exports={
       name:"  ",
       sleep:function(){
           console.log("  ");
       }
    }
    
  • node 에 있 는 require()로 딩 모듈 을 불 러 올 때 이름 을 직접 쓸 수 있 지만 의존 적 으로 불 러 와 야 하 며 프로필 도 생 성 해 야 합 니 다
  • 터미널 이 의존 파일 에 들 어가 설정 파일 을 설치 합 니 다
  • nodejs 는 자동 으로 node 를 찾 을 수 있 습 니 다.modules 파일 아래 파일:nodemodules 파일 아래 에 cd 에서 이 파일 에 들 어 갈 수 있 는 폴 더 가 있 습 니 다.명령 cnpm init--yes 를 사용 하여 현재 파일 의 package.json 파일 을 설치 하고 require("이름")를 직접 요청 합 니 다.
  • 사례 1
    common.js
    
    //        require("")    
    let todo=require("./todo");//      
    console.log(todo);
    
    // node   require()              ,           ,          
    //         ,      
    let fetch=require("Fetch");
    console.log(fetch);
    fetch.get("http://www.zjm.com");
    
    
    Fetch.js
    
    module.exports={
       get(url){
           console.log(url);
       }
    }
    
    사례 2
    common.js
    
    let Axios = require("Axios");
    let url = "https://autumnfish.cn/search";
    let data = { keywords: '  ' };
    const http = require("http");
    let app = http.createServer((req, res) => {
       res.writeHead(200, { "Content-Type": "text/html;charset=utf-8" });
       Axios.get(url, { params: data }).then((result) => {
           res.write(result);
           res.end();
       });
    });
    app.listen(8080)
    Axios.js
    
    const http = require("http");
    const https=require("https");
    //    
    let change = (args) => {
       let str = "?";
       for (let key in args) {
           str += key + "=" + args[key];
           str += "&";
       }
       return str.slice(0, str.length - 1);
    }
    module.exports = {
       get(href, { params }) {
           return new Promise((resolve, reject) => {
               href += change(params);
               https.get(href, (res) => {
                   let { statusCode } = res;
                   let error;
                   if (statusCode != 200) {
                       error = new Error('Request Failed.
    ' + `Status Code: ${statusCode}`); } if (error) { console.error(error.message); // Consume response data to free up memory res.resume(); return; } // res.setEncoding("utf8"); let alldata = ""; // res.on("data", (info) => { alldata += info; }) res.on("end", () => { let data =alldata; resolve(data); }) }); }); }, post() { } }
    Node.js 에 내 장 된 모듈 과 사용자 정의 모듈 의 실현 에 관 한 이 글 은 여기까지 소개 되 었 습 니 다.더 많은 Node.js 내 장 된 모듈 과 사용자 정의 모듈 내용 은 우리 의 이전 글 을 검색 하거나 아래 의 관련 글 을 계속 찾 아 보 세 요.앞으로 많은 지원 을 바 랍 니 다!

    좋은 웹페이지 즐겨찾기