webpack typescript 加载 js 模块报错解决方案

环境

webpack:4.10.2

typescript:2.9.1

ts-loader:4.3.0

ts-node:6.1.0

加载js文件情况这些

  1. ts 加载commonjs 模块
  2. ts 加载umd 库
  3. ts 加载全局库
  4. ts 加载ES6 模块

参考文章 webpack中文网提供的文档

1 使用typescript 配置webpack

2 typescript webpack指南

当然文档不细看也整不对,先说对应的解决办法

【1】ts 加载commonjs 模块

加载方式,按typescript 文档 给出的方式,必须使用TypeScript提供的特定语法import module = require("module")

如下图所示:


当然 这些都不是关键,关键在tsconfig.json

module  为commonjs

allowJs 为 true !!!!!!!!!!!!!!这个很重要

参见 tsconfig.json 配置文档


【2】加载UMD模块库

关于库的识别请参考 typescript 文档

加载这样的模块比较简单,比如npm 安装的 jquery 包可以这样加载,

前提是必须安装对应的types声明文件

npm install @types/jquery@3.3.1


【3】加载全局库

拿webuploader 来举例 目录结构如下


加载这样的全局库 使用

import WU =require('webuploader');

其次就是声明文件的编写,库类型的识别及声明文件的编写,详见 typescript   声明模板

需要注意的是,声明文件的命名是 moduleName.d.ts 而不是文件名,和模块放在同一目录就可以

 比较坑的一点是,尽量慎重操作不要给声明文件在webstrom 里重命名,就算改回来也会报错,原因待查


【4】 加载ES6 载块,

    待续。。。。



  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值