当前播放: 22 | ES6与CommonJS的模块系统
00:00 / 00:00
高清
  • 高清
1.0x
  • 2.0x
  • 1.5x
  • 1.25x
  • 1.0x
  • 0.5x
网页全屏
全屏
00:00
付费课程,可试看
课程目录
第一章:基础篇 (21讲)
01 | 重塑“类型思维”
免费
02 | 类型基础(1):强类型与弱类型
免费
03 | 类型基础(2):动态类型与静态类型
免费
04 | 编写你的第一个TypeScript程序
免费
05 | 基本类型
免费
06 | 枚举类型
07 | 接口(1):对象类型接口
08 | 接口(2):函数类型接口
09 | 函数相关知识点梳理
10 | 类(1):继承和成员修饰符
11 | 类(2):抽象类与多态
12 | 类与接口的关系
13 | 泛型(1):泛型函数与泛型接口
14 | 泛型(2):泛型类与泛型约束
15 | 类型检查机制(1):类型推断
16 | 类型检查机制(2):类型兼容性
17 | 类型检查机制(3):类型保护
18 | 高级类型(1):交叉类型与联合类型
19 | 高级类型(2):索引类型
20 | 高级类型(3):映射类型
21 | 高级类型(4):条件类型
第二章:工程篇 (10讲)
22 | ES6与CommonJS的模块系统
23 | 使用命名空间
24 | 理解声明合并
25 | 如何编写声明文件
26 | 配置tsconfig.json(1):文件选项
27 | 配置tsconfig.json(2):编译选项
28 | 配置tsconfig.json(3):工程引用
29 | 编译工具:从ts-loader到Babel
30 | 代码检查工具:从TSLint到ESLint
31 | 使用Jest进行单元测试
第三章:实战篇 (16讲)
32 | 创建项目
33 | 组件与类型(1):函数组件与类组件
34 | 组件与类型(2):高阶组件与Hooks
35 | 事件处理与数据请求
36 | 列表渲染与路由
37 | Redux与类型
38 | 搭建服务端开发环境
39 | 列表的CRUD
40 | 导出Excel
41 | 搭建Vue开发环境
42 | 组件封装
43 | 组件发布
44 | 共存策略
45 | 宽松策略
46 | 严格策略
47 | 结束语
22 | ES6与CommonJS的模块系统

22 | ES6与CommonJS的模块系统

梁宵
搜狗营销事业部高级架构师
47讲 约450分钟3082
单独订阅¥129
2人成团¥99
本节摘要
登录 后留言

精选留言(9)

  • tsc ./src/02-project/01-module/es6/a.ts -t es6 运行这个命令后,各种报错
    ode_modules/_@types_babel__core@7.1.3@@types/babel__core/index.d.ts:13:20 - error TS2307: Cannot find module '@babel/types'.
    node_modules/_@types_babel__core@7.1.3@@types/babel__core/node_modules/@types/babel__template/index.d.ts:9:31 - error TS2307: Cannot find module '@babel/parser'.

    9 import { ParserOptions } from "@babel/parser";

    作者回复: 课程在这里有处遗漏,说明一下:
    在命令行中指定了 target 为 es6,tsc 就会默认使用 Classic 模块解析策略,这个策略对于
        import * as t from "@babel/types";
    这种非相对路径的导入,不能正确解析。
    解决方法就是指定解析策略为 Node,比如:
        tsc ./a.ts -t es6 --moduleResolution node
    关于解析策略,详见第27讲。

    2019-12-25
  • 高瑞
    为什么有的系统语言使用import * as React from 'react';有的系统语言使用import React from 'react';

    作者回复: 第一种写法是将所有用export导出的成员绑定在React上,导入后用React.xxx访问;第二种仅是导出默认的(export default)

    2019-11-29
  • 拯救不开心
    老师,11.03说,target是es3,es5,module默认就是es6,
    后面又说,es3 默认的module是commonJS,
    因为是口误吧。。。

    作者回复: 嗯,命令行中 target为es3/5,module默认为commonjs

    2019-09-29
  • developer_hsl
    这里运行 tsc ./src/es6/a.ts -t es6
    为什么会报如下错误, 和老师不一样, 是不是哪里没跟上;
    node_modules/@types/uglify-js/index.d.ts:9:30 - error TS2307: Cannot find module 'source-map'.

    作者回复: 安装一下 @types/source-map 就行了

    2019-09-15
    3
  • eclipse
    1分44秒,第七行代码,这里应该不是放到一个“对象”中导出吧,应该是es6模块的语法,比如你
    export {
      a: { b }
    }
    这样是不行的

    作者回复: 这里的对象是指 {b, c} ,即 {b: b, c: c},没有问题

    2019-09-08
  • 野原
    老师,github上源码里面的package.json内容是不是不全?我在安装ts-node之后执行 ts-node ./src/node/c.node.ts 终端就会报错找不到 @babel/types @babel/parser source-map等等

    作者回复: 这节课运行的是 ts-base 工程,需要先全局安装ts-node,并不会依赖babel啊

    2019-08-23
    1
  • 东丰瑞雪建华年
    import,commonjs是modular思想的实现
    2019-08-10
  • kgdmhny
    老师请问一下, let c1 = require("./a.node"); 如果在a.node.ts 文件中 module.exports = a,b,function1; 那c1 是什么?

    作者回复: 我很想回答你,但为什么不自己手动试一下呢:),这样理解才深刻,然后遇到问题再来问。

    2019-08-03
    1
  • kgdmhny
    老师,请问一下,如果一个文件中沒有使用export关键字,是不是就不是一个模块。只要使用了一个export,就可当作一个模块了,文件里定义的变量就不会对外造成变量污染了

    作者回复: 文件中只要有 import 或 export ,这个文件就是一个模块

    2019-08-03
收起评论
看过的人还看
玩转webpack

程柳锋  腾讯高级工程师,IVWEB团队社区和工程化负责人

84讲 | 5522 人已学习

拼团 ¥79 原价 ¥99
浏览器工作原理与实践

李兵  前盛大创新院高级研究员

43讲 | 6351 人已学习

拼团 ¥79 原价 ¥99
Node.js开发实战

杨浩  腾讯高级工程师

57讲 | 3923 人已学习

拼团 ¥99 原价 ¥129
JavaScript核心原理解析

周爱民  《JavaScript语言精髓与编程实践》作者,南潮科技(Ruff)首席架构师

21讲 | 3706 人已学习

拼团 ¥55 原价 ¥68