zoukankan      html  css  js  c++  java
  • export,import,export default,import()区别

    export 导出 可以是多个变量或者函数

    // 写法一
    // utils.js
    export str = 'aaaa'
    export str1 = 'bbbbb'
    
    // index.js
    import {str, str1} from './utils.js'
    
    
    // 写法二
    // utils.js
    let str = 'aa'
    let str1 = 'bb'
    
    export {str, str1}
    // index.js
    import {str, str1} from './utils.js'

    export default本质上是输出一个叫default的变量 只能是一个变量或者函数

    // export default str = str编译以后是exports.default
    export function ss() {
      console.log('ss')
    }
    
    export function aa() {
      console.log('aa')
    }
    // 编译以后是
    exports.ss = ss;
    exports.aa = aa;

    import 是静态加载文件,可以提升,在所有js代码之前加载完成,不能再代码块中加载

    foo()
    import {foo} form './utils'
    // 不报错 是因为提升了

    import() 可以动态加载,可以在代码块中加载,实现按需加载,返回的是一个promise对象

    const main = document.querySelector('main');
    
    import(`./section-modules/${someVariable}.js`)
      .then(module => {
        module.loadPageInto(main);
      })
      .catch(err => {
        main.textContent = err.message;
      });

      按需加载:

    if (a==='a') {
      import('./utils').then(...)
    } else if (b==='b') {
      import('./utils1').then(...)
    } else if (c==='c') {
      import('./utils2').then(...)  
    }
  • 相关阅读:
    DELPHI开发LINUX包
    DELPHI开发LINUX的动态库
    中间件测试工具
    CENTOS7安装OPENSSL
    咏南跨平台中间件简介
    IdHTTPServer开发https服务器
    ServiceStack.Redis常用操作
    ServiceStack.Redis 之 IRedisTypedClient<第四篇>
    Redis常用命令速查 <第二篇>
    ServiceStack.Redis之IRedisClient<第三篇>
  • 原文地址:https://www.cnblogs.com/z-dl/p/8602887.html
Copyright © 2011-2022 走看看