【发布时间】:2015-11-25 07:13:25
【问题描述】:
在我的 MVC 6 应用程序中,作为旧 js/css 捆绑和缩小系统的替代品,我想生成 1 个可以在我的 HTML 中引用的 javascript 文件。此 javascript 文件是特定于页面/操作的,因此我不能将所有 .js 文件连接到一个文件夹中。
使用 CSS(使用 LESS)我已经通过使用 @import 设法做到这一点,创建的 .css 文件将是原始 .less 文件加上所有导入合并到 1 个文件中的组合。现在我正在尝试对我的 .js 文件做同样的事情。
在 GULP 中,我可以轻松地缩小每个单独的文件,并将它们放在正确的文件夹中,但我不知道如何将它们与正确的文件合并。我不想为每个文件/js 创建一个 gulp 任务来告诉要连接什么。
我曾想过使用 TypeScript 来引用其他 js 文件,然后使用 GULP 将它们编译到一个文件中,但这似乎有点困难。我对其他可以管理此问题的框架持开放态度。
在 typescript 中使用 ///reference 或导入模块在编译时实际上并不会像使用 LESS 那样导致导入。
例如,考虑以下js 或typescript-结构
scripts/common/master.js (or .ts etc.)
scripts/maincontroller/index.js (uses master.js)
scripts/maincontroller/support.js (uses master.js)
desired result after compile/merge/concat with gulp:
wwwroot/js/common/master.js (unchanged because nothing referenced)
wwwroot/js/maincontroller/index.js (concat with master.js)
wwwroot/js/maincontroller/support.js (concat with master.js)
【问题讨论】:
标签: javascript asp.net-mvc visual-studio typescript gulp