原文地址:https://marketplace.visualstudio.com/items?itemName=MadsKristensen.BundlerMinifier

特征

  • 将CSS,JavaScript或HTML文件捆绑到单个输出文件中
  • 保存源文件会自动触发重新捆绑
  • 支持globbing模式
  • MSBuild支持支持CI方案
  • 缩小单个或捆绑的CSS,JavaScript和HTML文件
  • 每种语言的缩小选项都是可自定义的
  • 打开生成的文件时显示水印
  • Task Runner Explorer集成
  • 命令行支持
  • 更新解决方案中所有捆绑包的快捷方式
  • 抑制输出文件生成
  • 转换为Gulp

关于编码的说明

没有BOM(字节顺序标记)的所有文件都被视为UTF-8。如果在输出包文件中看到奇怪的字符,则可能需要考虑将输入文件保存为UTF-8或允许您指定BOM的编码。

捆绑

在解决方案资源管理器中选择2个或更多相同类型的文件以创建捆绑包。

对源文件进行的任何编辑都将立即生成更新的捆绑文件输出。

捆绑包配置存储在一个名为的文件中,该文件bundleconfig.json将添加到项目的根目录中。

缩小

在解决方案资源管理器中右键单击任何JS,CSS或HTML文件。这将创建一个[filename] .min。[ext]并将其嵌套在原始文件下。

修改原始文件后,会立即生成新的min文件。

捆绑构建/ CI支持

在ASP.NET MVC和WebForms项目中,您可以在构建步骤中启用捆绑和缩小。只需右键单击该bundleconfig.json文件即可启用它。

单击该菜单项将提示您有关单击“确定”按钮时将发生的情况的信息。

NuGet包将安装到该packages文件夹中,而不会向项目本身添加任何文件。该NuGet包中包含一个MSBuild任务,该任务将bundleconfig.json在项目根目录中的文件上运行完全相同的编译器。

对于ASP.NET Core项目,请参阅wiki

更新所有捆绑包

您可以bundleconfig.json使用键盘快捷键Shift+Alt+i或使用顶级“生成”菜单上的按钮在解决方案中的所有文件上运行bundler 。

来源地图

目前仅支持JavaScript缩小源映射。

一个.map文件的下一次成功的.min.js文件自动,但如果你手动删除.map文件,新的人会不会在随后的minifications创建。

要启用源映射,请将此属性添加到bundleconfig.json文件中:

“ sourceMap ”:是的

任务运行资源管理器

快速浏览您指定的文件或直接在Task Runner Explorer中执行捆绑包。

您甚至可以设置绑定,以便在某些Visual Studio事件(例如BeforeBuild和Project Open)期间自动发生捆绑/缩小。

抑制输出文件生成

有些情况下,您不希望扩展程序监听文件更改并生成捆绑和缩小的输出。如果您想使用Gulp bundleconfig.json或使用服务器端代码,那可能就是这样。在这些情况下,让bundleconfig.json文件包含所有Visual Studio工具仍然有用,但让其他工具处理捆绑和缩小过程。

要取消输出,请删除右键菜单中的复选框bundleconfig.json

转换为Gulp

此功能使您可以根据已配置的内容轻松开始使用Gulp bundleconfig.json。它将创建gulpfile.js package.js如果它们尚不存在,则使用npm安装所需的节点模块。

gulpfile.js会消耗bundleconfig.json来获取输入和输出文件的路径,但会使用普通一饮而尽插件来完成所有的捆绑和缩小。您可以修改它以使用其他插件而不会失去其阅读能力bundleconfig.json

阅读更多相关信息,并在维基上查看代码示例。

bundleconfig.json

扩展bundleconfig.json在项目的根目录添加一个文件,用于配置所有捆绑。

以下是该文件的示例:

[   {     "outputFileName": "output/bundle.css",     "inputFiles": [       "css/lib/**/*.css", // globbing patterns are supported       "css/input/site.css"     ],     "minify": {         "enabled": true,         "commentMode": "all"     }   },   {     "outputFileName": "output/all.js",     "inputFiles": [       "js/*.js",       "!js/ignore.js" // start with a ! to exclude files     ]   },   {     "outputFileName": "output/app.js",     "inputFiles": [       "input/main.js",       "input/core/*.js" // all .js files in input/core/     ]   } ]
 

有助于

如果您想为此项目做出贡献,请查看贡献指南

要自己克隆和构建此项目,请确保为Visual Studio 安装Extensibility Tools 2015扩展,该扩展启用了此项目使用的某些功能。

Bundler和Minifier Visual Studio扩展的更多相关文章

  1. Productivity Power Tools 是微软官方推出的 Visual Studio 扩展

    Productivity Power Tools 是微软官方推出的 Visual Studio 扩展 免费的精品: Productivity Power Tools 动画演示

  2. Visual Studio 扩展包(.vsix)制作

    前言:上篇介绍了 Visual Studio扩展工具添加与卸载,本编要介绍的是Visual Studio 扩展包(.vsix)的制作. 方法: ①.下载并安装Visual Studio 2010 SD ...

  3. 最棒的Visual Studio扩展

    isual Studio是微软公司推出的开发环境,Visual Studio可以用来创建Windows平台下的Windows应用程序和网络应用程序,也可以用来创建网络服务.智能设备应用程序和Offic ...

  4. 写了一个远程桌面管理的Visual Studio扩展程序

    最近看了写Visual Studio扩展相关的一些资料,周末写了一个远程桌面管理器的扩展程序来练练手,由于和VisualStudio集成了,无需切换窗口,用起来还是觉得挺方便的. 关于远程桌面管理器的 ...

  5. Web编译器Visual Studio扩展

    原文地址:https://marketplace.visualstudio.com/items?itemName=MadsKristensen.WebCompiler 一个Visual Studio扩 ...

  6. 让编程更轻松的 7 个 Visual Studio 扩展 : 以下几个扩展,BuildVision可以用

    是时候升级你最喜欢的IDE了!在这篇文章中,我将介绍一些我最喜欢的与众不同的 Visual Studio 扩展,是它们让我的日常编程工作变得更加轻松.对于一些明摆着的,例如 ReSharper 和 O ...

  7. 当 Visual Studio 扩展遇到错误时

    我是遇到了 Github 扩展经常在 Visual Studio 启动时报错,找了一下可以尝试以下方法: 首先卸载插件 然后删除 %LocalAppData%\Microsoft\VisualStud ...

  8. Visual Studio扩展与更新中插件被禁用,安装后无法使用

    在Visual Studio中的扩展与更新中安装插件后,显示[禁用],重新安装后仍然不能使用,但是VS默认安装的扩展却可以正常使用. 这里需要注意下方显示“当前不允许加载每用户扩展”,点击“启用每用户 ...

  9. 使用Visual Studio扩展插件Visual assist X给代码插入注释模板

    Visual Assist 是由Whole Tomato公司为Microsoft Visual Studio开发的一款插件.它对Visual Studio的智能提示功能和代码高亮功能进行了增强,同时还 ...

随机推荐

  1. C++面向对象高级编程(上)-Geekband

    头文件和类声明 一定要注意使用防卫式的头文件声明: #ifndef _CLASSHEAD_ #define _CLASSHEAD_ . . . . #endif 基于对象和面向对象 : 基于对象 单一 ...

  2. css的层叠性+继承性+优先级+权重

    一.层叠性 1.含义 多种css样式叠加,浏览器处理冲突的能力. 2.原则 1>一般情况下,若出现冲突,会按照css的书写顺序,以最后的样式为准 2>样式不冲突,就不会层叠 二.css的继 ...

  3. phpqrcode.php 生成二维码图片用于推广

    <?php /* * PHP QR Code encoder * * This file contains MERGED version of PHP QR Code library. * It ...

  4. Django WSGI响应过程之WSGIHandler

    class WSGIHandler(base.BaseHandler): request_class = WSGIRequest def __init__(self, *args, **kwargs) ...

  5. LUOGU P1903 [国家集训队]数颜色 / 维护队列

    传送门 解题思路 带修莫队,第一次写,其实和普通莫队差不多,就是多了个时间轴,块分n^(2/3)最优,时间复杂度O(n^(5/3)). #include<iostream> #includ ...

  6. vue.js_10_vue的路由

    1.vue-router的基本使用 1>安装vue-rouder路由模块 <script src="js/vue-2.4.0.js"></script> ...

  7. AdaBoost笔记之代码

    最近要做二分类问题,先Mark一下知识点和代码,参考:Opencv2.4.9源码分析——Boosting   以下内容全部转自此文 一 原理 二 opencv源码 1.先看构建Boosting的参数: ...

  8. 可持久化线段树的学习(区间第k大和查询历史版本的数据)(杭电多校赛第二场1011)

    以前我们学习了线段树可以知道,线段树的每一个节点都储存的是一段区间,所以线段树可以做简单的区间查询,更改等简单的操作. 而后面再做有些题目,就可能会碰到一种回退的操作.这里的回退是指回到未做各种操作之 ...

  9. 数据交换格式之 - Json

    Json简介: JSON是JavaScript对象表示法,是一种与语言无关的数据交换的格式,是一种完全独立于语言的文本格式. 使用ajax进行前后台数据交换,移动端与服务端的数据交换. web客户端和 ...

  10. Jquery选择器总结一

    jquery 是javaScript框架,封装了js. 好处:使用方便,少代码多功能. 实现同一个功能的代码量少. 屏蔽浏览器差异. 简化ajax开发. 选择器 基本选择器 1. id选择器 $(&q ...