zoukankan      html  css  js  c++  java
  • es6模块化 export common.js模块化require

    
    

    require/exports 和 import/export 形式不一样

    require/exports 的用法只有以下三种简单的写法:

    const fs = require('fs')
    exports.fs = fs
    module.exports = fs

    而 import/export 的写法就多种多样:

    import fs from 'fs'
    import {default as fs} from 'fs'
    import * as fs from 'fs'
    import {readFile} from 'fs'
    import {readFile as read} from 'fs'
    import fs, {readFile} from 'fs'
    
    export default fs
    export const fs
    export function readFile
    export {readFile, read}
    export * from 'fs'

    1.export与export default均可用于导出常量、函数、文件、模块等 2.你可以在其它文件或模块中通过import+(常量 | 函数 | 文件 | 模块)名的方式,将其导入,以便能够对其进行使用 3.在一个文件或模块中,export、import可以有多个,export default仅有一个 4.通过export方式导出,在导入时要加{ },export default则不需要 //1.export a.js export const str = "blablabla~"; export function log(sth) { return sth; } //b.js 对应的导入方式: import { str, log } from 'a'; //也可以分开写两次,导入的时候带花括号 // 2.export default //a.js const str = "blablabla~"; export default str; // 对应的导入方式: // b.js import str from 'a'; 使用export default命令,为模块指定默认输出,这样就不需要知道所要加载模块的变量名 //a.js let sex = "boy"; export default sex(sex不能加大括号) //原本直接export sex外部是无法识别的,加上default就可以了.但是一个文件内最多只能有一个export default。 其实此处相当于为sex变量值"boy"起了一个系统默认的变量名default,自然default只能有一个值,所以一个文件内不能有多个export default。 // b.js 本质上,a.js文件的export default输出一个叫做default的变量,然后系统允许你为它取任意名字。所以可以为import的模块起任何变量名,且不需要用大括号包含 import any from "./a.js" import any12 from "./a.js" console.log(any,any12) // boy,boy

      

  • 相关阅读:
    几种常用的曲线
    0188. Best Time to Buy and Sell Stock IV (H)
    0074. Search a 2D Matrix (M)
    0189. Rotate Array (E)
    0148. Sort List (M)
    0859. Buddy Strings (E)
    0316. Remove Duplicate Letters (M)
    0452. Minimum Number of Arrows to Burst Balloons (M)
    0449. Serialize and Deserialize BST (M)
    0704. Binary Search (E)
  • 原文地址:https://www.cnblogs.com/tiangeng/p/10015226.html
Copyright © 2011-2022 走看看