前端模块化开发

模块化发展历程

  1. 一个模块单独抽离成一个文件,(缺点: 命名冲突,全靠约定)
  2. 命名空间的方式,导出一个对象(确定:命名冲突还是存在,可在外部修改,没解决依赖关系的问题)
  3. 立执行函数(闭包,只能在将对象挂载到全局,通过传参解决依赖问题。jQuery就是基于这种方式实现)
    这三种是早起没有工具和规范的时候的解决方式

AMD

AMD规范,requirejs的规范 (异步的模块定义规范)
AMD规范

CommomJS

node 使用的CommomJS规范 是以同步的方式加载文件
CommomJS规范

CMD 规范

在JavaScript中,CMD代码规范是指模块定义规范,它是Asynchronous Module Definition的缩写,即异步模块定义。CMD规范主要用于sea.js这种模块加载器。

现在使用的ES Modules + node下使用CommonJS

es Modules

ES Modules 在html中的使用

ES Modules 在html中的使用
在这里插入图片描述

ES Modules 导入导出

export const PI = '3.14';
export default {
    a: 123
}
import  obj, { PI } from './index'

统一导出时可以使用便捷写法

export { default as Button, PI } from './index'

polyfill

让旧版浏览器兼容ES Modules的写法。ie中可能还不兼容promise,单独处理一下
polyfill浏览器兼容

相关推荐

  1. 前端+鸿蒙」鸿蒙应用开发-TS-模块

    2024-03-19 23:58:03       35 阅读
  2. 前端模块整理汇总

    2024-03-19 23:58:03       34 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-03-19 23:58:03       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-03-19 23:58:03       101 阅读
  3. 在Django里面运行非项目文件

    2024-03-19 23:58:03       82 阅读
  4. Python语言-面向对象

    2024-03-19 23:58:03       91 阅读

热门阅读

  1. VirtualBox 无法打开终端肿么办

    2024-03-19 23:58:03       37 阅读
  2. MySQL数据库中的锁机制(通俗易懂)

    2024-03-19 23:58:03       35 阅读
  3. C语言中函数的递归

    2024-03-19 23:58:03       36 阅读
  4. Android 子系统

    2024-03-19 23:58:03       42 阅读
  5. C语言实现彩色文字闪烁效果

    2024-03-19 23:58:03       39 阅读
  6. 干好工作18法

    2024-03-19 23:58:03       31 阅读
  7. 从基础入门到学穿C++

    2024-03-19 23:58:03       41 阅读
  8. 隐私计算实训营第一期第1讲

    2024-03-19 23:58:03       37 阅读
  9. Vue打包问题汇总:legacy、runtime.js

    2024-03-19 23:58:03       47 阅读
  10. Windows下.ipynb文件,比较实用

    2024-03-19 23:58:03       33 阅读
  11. Mysql,MongoDB,Redis的横纵向对比

    2024-03-19 23:58:03       42 阅读
  12. LeetCode108 将有序数组转换为二叉搜索树

    2024-03-19 23:58:03       44 阅读