• export命令import命令


    export命令import命令
    export { name1, name2, …, nameN };
    export { variable1 as name1, variable2 as name2, …, nameN };
    export let name1, name2, …, nameN; // also var, function
    export let name1 = …, name2 = …, …, nameN; // also var, const
    
    export default expression;
    export default function (…) { … } // also class, function*
    export default function name1(…) { … } // also class, function*
    export { name1 as default, … };
    
    export * from …;
    export { name1, name2, …, nameN } from …;
    export { import1 as name1, import2 as name2, …, nameN } from …;
    
    export命令 注意事项
    1.使用export default命令,默认输出时,important命令可以为该匿名函数指定任意名字
    // export-default.js
    export default function () {
      console.log('foo');
    }
    // import-default.js
    import customName from './export-default';
    2.使用export default时,对应的import语句不需要使用大括号否则对应的import语句需要使用大括号
    // 第一组
    export default function crc32() { // 输出
      // ...
    }
    import crc32 from 'crc32'; // 输入
    
    // 第二组
    export function crc32() { // 输出
      // ...
    };
    import {crc32} from 'crc32'; // 输入
    
    3.export defaut后面不能跟变量声明语句,因为export default命令的本质是将后面的值,赋给default变量,所以可以直接将一个值写在export default之后。
    // 正确
    export var a = 1;
    
    // 正确
    var a = 1;
    export default a;
    
    // 正确
    export default 42;
    
    4.export命令规定的是对外接口,必须与模块名字一 一对应,但是可以通过as关键字更名
    //与模块变量的名字一 一对应
    function v1() { ... }
    function v2() { ... }
    
    export {
      v1 as streamV1,
      v2 as streamV2,
      v2 as streamLatestVersion
    };
    
    //正确写法
    // 写法一
    export var m = 1;
    // 写法二
    var m = 1;
    export {m};
    // 写法三
    var n = 1;
    export {n as m};
    
    smile轉角
    【ES6】export和important使用区别
     
    
    export命令
    export { name1, name2, …, nameN };
    export { variable1 as name1, variable2 as name2, …, nameN };
    export let name1, name2, …, nameN; // also var, function
    export let name1 = …, name2 = …, …, nameN; // also var, const
    
    export default expression;
    export default function (…) { … } // also class, function*
    export default function name1(…) { … } // also class, function*
    export { name1 as default, … };
    
    export * from …;
    export { name1, name2, …, nameN } from …;
    export { import1 as name1, import2 as name2, …, nameN } from …;
    export命令 注意事项
    1.使用export default命令,默认输出时,important命令可以为该匿名函数指定任意名字
    
    // export-default.js
    export default function () {
      console.log('foo');
    }
    // import-default.js
    import customName from './export-default';
    2.使用export default时,对应的import语句不需要使用大括号否则对应的import语句需要使用大括号
    
    复制代码
    // 第一组
    export default function crc32() { // 输出
      // ...
    }
    
    import crc32 from 'crc32'; // 输入
    
    // 第二组
    export function crc32() { // 输出
      // ...
    };
    
    import {crc32} from 'crc32'; // 输入
    复制代码
    3.export defaut后面不能跟变量声明语句,因为export default命令的本质是将后面的值,赋给default变量,所以可以直接将一个值写在export default之后。
    
    复制代码
    // 正确
    export var a = 1;
    
    // 正确
    var a = 1;
    export default a;
    
    // 错误
    export default var a = 1;
    
    // 正确
    export default 42;
    
    // 报错
    export 42;
    复制代码
     4.export命令规定的是对外接口,必须与模块名字一 一对应,但是可以通过as关键字更名
    
    复制代码
    //与模块变量的名字一 一对应
    function v1() { ... }
    function v2() { ... }
    
    export {
      v1 as streamV1,
      v2 as streamV2,
      v2 as streamLatestVersion
    };
    
    //对外接口
    //错误写法
    
    // 报错
    export 1;
    
    // 报错
    var m = 1;
    export m;
    
    
    //正确写法
    
    // 写法一
    export var m = 1;
    
    // 写法二
    var m = 1;
    export {m};
    
    // 写法三
    var n = 1;
    export {n as m};
     
    
    import命令
    import defaultExport from "module-name";
    import * as name from "module-name";
    import { export } from "module-name";
    import { export as alias } from "module-name";
    import { export1 , export2 } from "module-name";
    import { export1 , export2 as alias2 , [...] } from "module-name";
    import defaultExport, { export [ , [...] ] } from "module-name";
    import defaultExport, * as name from "module-name";
    import "module-name";
    1.作用域提前
    foo();
    import { foo } from 'my_module';
    2.import命令是静态执行,不能使用表达式和变量

    https://www.cnblogs.com/websmile/p/8204148.html   export和important使用区别

  • 相关阅读:
    springMVC 返回json 忽略类中属性的注解
    MySQL中函数CONCAT及GROUP_CONCAT
    ArrayList转成HashMap再转成LinkedHashMap 自己的解决方案
    easyui datebox 设置不可编辑
    js或jquery如何获取父级、子级、兄弟元素(包括祖级、孙级等)
    关于js中空值比较和传值的问题
    Tomcat报错:Failed to start component [StandardEngine[Catalina].StandardHost[localhost]]
    JQuery 阻止js事件冒泡 阻止浏览器默认操作
    visualstudio2017 +EF+Mysql生成实体数据模型闪退
    MVC错误:查询的结果不能枚举多次
  • 原文地址:https://www.cnblogs.com/shy1766IT/p/11145022.html
Copyright © 2020-2023  润新知