Bundler和Minifier Visual Studio扩展
原文地址: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扩展的更多相关文章
- Productivity Power Tools 是微软官方推出的 Visual Studio 扩展
Productivity Power Tools 是微软官方推出的 Visual Studio 扩展 免费的精品: Productivity Power Tools 动画演示
- Visual Studio 扩展包(.vsix)制作
前言:上篇介绍了 Visual Studio扩展工具添加与卸载,本编要介绍的是Visual Studio 扩展包(.vsix)的制作. 方法: ①.下载并安装Visual Studio 2010 SD ...
- 最棒的Visual Studio扩展
isual Studio是微软公司推出的开发环境,Visual Studio可以用来创建Windows平台下的Windows应用程序和网络应用程序,也可以用来创建网络服务.智能设备应用程序和Offic ...
- 写了一个远程桌面管理的Visual Studio扩展程序
最近看了写Visual Studio扩展相关的一些资料,周末写了一个远程桌面管理器的扩展程序来练练手,由于和VisualStudio集成了,无需切换窗口,用起来还是觉得挺方便的. 关于远程桌面管理器的 ...
- Web编译器Visual Studio扩展
原文地址:https://marketplace.visualstudio.com/items?itemName=MadsKristensen.WebCompiler 一个Visual Studio扩 ...
- 让编程更轻松的 7 个 Visual Studio 扩展 : 以下几个扩展,BuildVision可以用
是时候升级你最喜欢的IDE了!在这篇文章中,我将介绍一些我最喜欢的与众不同的 Visual Studio 扩展,是它们让我的日常编程工作变得更加轻松.对于一些明摆着的,例如 ReSharper 和 O ...
- 当 Visual Studio 扩展遇到错误时
我是遇到了 Github 扩展经常在 Visual Studio 启动时报错,找了一下可以尝试以下方法: 首先卸载插件 然后删除 %LocalAppData%\Microsoft\VisualStud ...
- Visual Studio扩展与更新中插件被禁用,安装后无法使用
在Visual Studio中的扩展与更新中安装插件后,显示[禁用],重新安装后仍然不能使用,但是VS默认安装的扩展却可以正常使用. 这里需要注意下方显示“当前不允许加载每用户扩展”,点击“启用每用户 ...
- 使用Visual Studio扩展插件Visual assist X给代码插入注释模板
Visual Assist 是由Whole Tomato公司为Microsoft Visual Studio开发的一款插件.它对Visual Studio的智能提示功能和代码高亮功能进行了增强,同时还 ...
随机推荐
- C++面向对象高级编程(上)-Geekband
头文件和类声明 一定要注意使用防卫式的头文件声明: #ifndef _CLASSHEAD_ #define _CLASSHEAD_ . . . . #endif 基于对象和面向对象 : 基于对象 单一 ...
- css的层叠性+继承性+优先级+权重
一.层叠性 1.含义 多种css样式叠加,浏览器处理冲突的能力. 2.原则 1>一般情况下,若出现冲突,会按照css的书写顺序,以最后的样式为准 2>样式不冲突,就不会层叠 二.css的继 ...
- phpqrcode.php 生成二维码图片用于推广
<?php /* * PHP QR Code encoder * * This file contains MERGED version of PHP QR Code library. * It ...
- Django WSGI响应过程之WSGIHandler
class WSGIHandler(base.BaseHandler): request_class = WSGIRequest def __init__(self, *args, **kwargs) ...
- LUOGU P1903 [国家集训队]数颜色 / 维护队列
传送门 解题思路 带修莫队,第一次写,其实和普通莫队差不多,就是多了个时间轴,块分n^(2/3)最优,时间复杂度O(n^(5/3)). #include<iostream> #includ ...
- vue.js_10_vue的路由
1.vue-router的基本使用 1>安装vue-rouder路由模块 <script src="js/vue-2.4.0.js"></script> ...
- AdaBoost笔记之代码
最近要做二分类问题,先Mark一下知识点和代码,参考:Opencv2.4.9源码分析——Boosting 以下内容全部转自此文 一 原理 二 opencv源码 1.先看构建Boosting的参数: ...
- 可持久化线段树的学习(区间第k大和查询历史版本的数据)(杭电多校赛第二场1011)
以前我们学习了线段树可以知道,线段树的每一个节点都储存的是一段区间,所以线段树可以做简单的区间查询,更改等简单的操作. 而后面再做有些题目,就可能会碰到一种回退的操作.这里的回退是指回到未做各种操作之 ...
- 数据交换格式之 - Json
Json简介: JSON是JavaScript对象表示法,是一种与语言无关的数据交换的格式,是一种完全独立于语言的文本格式. 使用ajax进行前后台数据交换,移动端与服务端的数据交换. web客户端和 ...
- Jquery选择器总结一
jquery 是javaScript框架,封装了js. 好处:使用方便,少代码多功能. 实现同一个功能的代码量少. 屏蔽浏览器差异. 简化ajax开发. 选择器 基本选择器 1. id选择器 $(&q ...