小编Sco*_*ula的帖子

是否可以在 TypeScript 导入中指定 webpack 加载器?

我的项目是用 TypeScript 编写的,并使用 webpack 来打包脚本。所有 .ts 文件都通过 TypeScript 加载器以将它们转换为 JavaScript;我想弄清楚如何做的是让一些特定的导入通过自定义的 webpack 加载器。就像是:

import widget from 'myCustomLoader!./widget';
Run Code Online (Sandbox Code Playgroud)

当然,这是行不通的,因为 TypeScript 不知道如何解释 webpack 的加载器语法。理想情况下,TypeScript 会忽略 ! 之前的所有内容。为了类型检查的目的,只需查看'./widget'。

我考虑的另一种可能性是让所有 .ts 文件通过 myCustomLoader 通过在 webpack.config 中指定它,然后使用某种查询字符串来通知它完成它的工作。例如:

import widget from './widget?myCustomLoader=true';
Run Code Online (Sandbox Code Playgroud)

但是 TypeScript 仍然无法处理。显然直接使用 require 会起作用:

var widget = require('myCustomLoader!./widget');
Run Code Online (Sandbox Code Playgroud)

...但后来我失去了 TypeScript 提供的所有类型安全性。任何人都可以建议一种方法来指定(或以其他方式与之交互)自定义 webpack 加载器并仍然保持 TypeScript 导入语法的类型安全优势吗?

typescript webpack

8
推荐指数
1
解决办法
2687
查看次数

标签 统计

typescript ×1

webpack ×1