小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

ES6 - 基礎(chǔ)學(xué)習(xí)(20): 模塊化 導(dǎo)出與導(dǎo)入 補(bǔ)充

 小樣樣樣樣樣樣 2020-07-26

export 與 import可以在同一模塊使用,使用特點(diǎn):

1、可以將導(dǎo)出接口改名,包括 default。

2、復(fù)合使用 export 與 import ,也可以導(dǎo)出全部,當(dāng)前模塊導(dǎo)出的接口會(huì)覆蓋繼承導(dǎo)出的。

模塊之間也可以相互繼承(有明確依賴關(guān)系的不行)。

項(xiàng)目實(shí)際開發(fā)中,時(shí)不時(shí)會(huì)需要一些全局變量(如 Vuex)以用來做一些特殊操作。模塊之間也一樣,如果幾個(gè)模塊相互之間有功能聯(lián)系,或 幾個(gè)模塊需要共享一個(gè)變量,那這時(shí)就需要一個(gè)跨模塊常量了。

在新的變量聲明方式 let與 const中,用const聲明的常量在當(dāng)前代碼塊中都有效,因此將 const聲明的常量放在整個(gè)模塊的頭部,則對(duì)整個(gè)模塊都有效,所以可以利用這一點(diǎn)進(jìn)行跨模塊變量的聲明。

// index_export_default.js
const A = 1, B = 2, C = 3;
export default {A, B, C};
// index_import1.js
import constants from './index_export_default.js';
console.log(`const A:${constants.A}`);            // const A:1
console.log(`const C:${constants.C}`);            // const C:3
constants.A = 456;
// index_import2.js
import constants from './index_export_default.js';
console.log(`const A:${constants.A}`);            // const A:1
console.log(`const C:${constants.C}`);            // const C:3

1、如果要共享的常量比較多,這時(shí)可以用一個(gè)公共 constants目錄,將各個(gè)模塊各自需要的常量 整理后寫在對(duì)應(yīng)獨(dú)立的文件里,即便于管理,又各自獨(dú)立。

// index_export_default.js
const A = 1, B = 2, C = 3;
export default {A, B, C};
// index_export.js
export const person = ['name', 'gender', 'age', 'height','weight'];
// index_import.js
import constants from './index_export_default.js';
import {person} from './index_export.js';

console.log(`const A:${constants.A}`);            // const A:1
console.log(`person:${person}`);                  // person:name,gender,age,height,weight


2、各個(gè)模塊各自需要的常量 整理后寫在對(duì)應(yīng)獨(dú)立的文件里,當(dāng)前加載模塊需要那些共享常量,就加載對(duì)應(yīng)的文件。如果需要的共享常量對(duì)應(yīng)的文件多,可以一一對(duì)應(yīng)加載,也可以將這些文件先對(duì)應(yīng)加載到一個(gè)中間文件,然后再加載該中間文件。

// index_constants.js
export constantsA from './index_export_default.js';
export {person} from './index_export.js';
// index_import.js
import constantsA from './index_export_default.js';
import {person as constantsB} from './index_export_default.js';
console.log(`const A:${constantsA.A}`);                // const A:1
console.log(`const C:${constantsA.C}`);                // const C:3
console.log(constantsB);                                // (5) ["name", "gender", "age", "height", "weight"]

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多