nodejs&es6 模塊操作

nodejs 模塊

  1. 字符串
// 暴露 
module.exports = '宮鑫'

// 導入模塊(導入js,不用加後綴)
const test = require('./test');
console.log(test)
// => 宮鑫
  1. 暴露一個對象
// 暴露 (test.js)
module.exports = {
    name: '宮鑫'
}

// 導入
const test = require('./test');
console.log(test)
// => {name: "宮鑫"}

Es6 模塊語法

基礎導入

import testName from './test';
//【test.js 導出】
module.exports = {
    name: '宮鑫'
}
--------------------------------
// 【index.js 導入】
import testName from './test';
console.log(testName)
// => {name: "宮鑫"}

默認導出

// 【導出】 在 test.js文件,默認導出一個對象
export default {
    name: '宮鑫'
}
// 【導入】
import testName from './test'
console.log(testName)
// => {name: "宮鑫"}
export default () => {
    return '默認導出一個箭頭函數';
}

按需導出
導出

【test.js】

export function fnName1 (){
    return '按需導出 - 1';
}

export function fnName2 (){
    return '按需導出 - 2'
}

導入
按需導出,導入的時候,用 對象的解構賦值 獲取 {fnName1, fnName2}

【index.js】

import {fnName1, fnName2} from './test'
console.log(fnName1())
// => 按需導出 - 1
console.log(fnName2())
// => 按需導出 - 2

默認導出 + 按需導出
導出

【test.js】

// 默認導出
export default {
    name: '宮鑫'
}

// 按需導出
export function fnName1 (){
    return '按需導出 - 1';
}
export function fnName2 (){
    return '按需導出 - 2'
}

導入

【index.js】

// testName: 接收默認導出
// {fnName1, fnName2} 解構接收按需導出的
import testName,{fnName1, fnName2} from './test';

console.log(testName);
// => {name: "宮鑫"}
console.log(fnName1());
// => 按需導出 - 1
console.log(fnName2());
// => 按需導出 - 2

文件1 -> 文件2 -> 文件3
現在有三個文件,分別是 gx.jstest.jsindex.js
現在 gx.js 導出一個模塊,test.js 導入,並且再次把這個模塊導出出來,index.js 再導出;

【gx.js】
export function user() {
    return {
        name: '宮鑫'
    }
}

【test.js】
// 導入 gx.js 文件的內容 並導出
export {
    user
} from './gx'


【index.js】
import {user} from './test';
console.log(user)
// => function user(){ ... }





基本上就這些啦;

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章