zoukankan      html  css  js  c++  java
  • 关于webpack,babel,es6,commonJS,import,require之间的联系

    一. babel(语法转换)

    1. 浏览器很多都不支持es6的语法,或者仅仅是部分支持,babel就承担了“翻译”的角色,把es6,es7的写法转换成es5的写法

    2. babel转换后的代码是遵循commonJS模块规范的es5写法,而这个规范,浏览器并不能识别。因此导入到浏览器中会报错,而nodeJS是commonJS的实现者,所以在babel转换后的代码是可以在node中运行的。

    3. 为什么import和require可以混用,因为babel是不会转换require,本身就是遵循语法不需要转换,之后通过webpack打包转换成浏览器可运行语法就行了

    二. webpack(模块打包工具)

    为了将babel生成的commonJS模块规范的es5写法能够在浏览器上直接运行,在webpack打包中就会有一套自己的loader专门来处理这些,可以转换成浏览器可运行代码

    三. es6的Modules和commonJS的关系(模块语法)

    es6的Modules导入导出是:import和export

    commonJS的导入导出是:require和module.exports

    作者:dlm17
    本文版权归作者和博客园共有,欢迎转载,但必须给出原文链接,并保留此段声明,否则保留追究法律责任的权利。
  • 相关阅读:
    将excel单元格中的内容,批量转化成批注
    装饰器的入门到精通
    自定义dict
    python2.7 + PyQt4安装
    一些好用的python模块
    人工智能-自然语言处理
    websocket-单群聊
    UA池和代理池
    scrapy框架持久化存储
    SQL Server 2012 酸爽的安装体验
  • 原文地址:https://www.cnblogs.com/dlm17/p/13093898.html
Copyright © 2011-2022 走看看