asp.net-mvc – 在不同环境中自动切换到缩小的CSS和JS文件
我正在使用ASP.Net MVC 5并利用WebEssentials LESS和捆绑功能.
WebEssentials设置为在保存时创建缩小的css和js文件.这是我想要的功能,因为我可以监视输出并降低应用程序启动时间(不使用Asp.Net MVC包). 如何在部署文件时自动让我的应用程序使用缩小版本的文件,而无需手动更改文件名? 所以,例如,来自: <link href="somestyles.css" .. > 至: <link href="somestyles-min.css" .. > 我确实读过我可以将WebEssentials和Asp.Net MVC Bundle结合起来,只要我在Asp.Net MVC Bundles中禁用了缩小选项.然后,这将替换生产中的MIN文件(web.config [debug =“false”]). 这是我唯一的选择还是有更好的方法来实现这一目标? 解决方法
这绝对不是唯一的方法.另一种方法是完全断开所有基于Microsoft的工具(即捆绑,Web要素等)并使用Javascript任务运行器.然后编译超集和预处理器,缩小和任何其他前端重物可以在一个地方.它也可以基于环境.
因此,让我们解决您的一些具体问题. 任务以nodejs和gulp的风格运行 >下载nodejs cd "C:UsersbeloudDocumentsVisual Studio 2013ProjectsYourProject" >通过运行npm init初始化节点项目.这会问你一堆关于你的项目的问题.完成后,它将创建一个文件package.json,它将跟踪您的节点依赖项和项目详细信息. npm install gulp -g npm install gulp --save-dev npm install gulp-less --save-dev npm install gulp-minify-css --save-dev npm install gulp-if --save-dev 我们在全球范围内安装gulp,因此我们可以在任何地方使用它(它将为您添加路径).然后我们在本地安装一些软件包到我们的项目中进行实际工作(缩小,处理等). //these are the modules that we'll be using in our task var gulp = require('gulp'),less = require('gulp-less'),gulpif = require('gulp-if'),minifycss = require('gulp-minify-css'); var isDebug = true; // I usually have a config.js file that has this and some handy static paths that I'll be referencing regularly. Then I just require it above. gulp.task('default',function() { return gulp.src('Content/less/**/*.less') .pipe(less()) .pipe(gulpif(isDebug === false,minifycss())) //the first argument is the condition,the second is the method to call if the condition is true .pipe(gulp.dest('Content/css')); }); >在命令提示符下运行gulp.那将运行默认任务.基本上,它将在Content / less下的所有目录中查找任何较少的文件,将它们编译为css,如果isDebug为false则将它们缩小并将其输出到Content / css. gulp.task('watch',function() { // Watch .less files gulp.watch('Content/less/**/*.less',['default']); }); 运行gulp后,任务将保持活动状态,直到手动终止.它将监视对Content / less中任何较少文件所做的更改,并将在保存的更改时重新运行该任务. 这是使用任务运行器来实现您正在尝试执行的操作的一个非常基本的示例.您可以使用nodejs,gulp以及我引用的其他所有内容来完成更多工作.我个人会建议这样做,因为它比你目前使用的一次性工具更强大,Visual Studio 2015已经在很大程度上依赖于这种新方法,所以你很可能不得不学习这一点. 您可以在Mark Goodyear之前按照这个真正令人惊叹的教程Getting started with gulp了解更多信息. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- ASP.NET Core中实现用户登录验证的最低配置示例代码
- asp.net-mvc – 带有淘汰赛的EditorFor HTML Helper
- asp.net-core – 如何在IIS上运行ASP.NET MVC6而不发布应用
- asp.net – 如何正确过滤数据表(datatable.select)
- asp.net-mvc-4 – ASP.NET Web API的自定义MVC AuthorizeAt
- asp.net-mvc – ASP.NET MVC jQueryUI datepicker在使用AJA
- asp如何获取热点api接口?
- IIS虚拟目录和ASP.NET目录路径
- asp.net-mvc-3 – Razor Func与MvcHtmlString混合使用
- 请帮助我了解ASP.NET控件的AutoPostBack属性
- asp.net-mvc – 如何测试ASP.NET MVC 3中的Rende
- asp.net-web-api – 如何设置katana-project以允
- asp.net-mvc – 如何在mvc中使用图表控件
- asp.net – .Net Core 2.0 – 获取AAD访问令牌以
- asp.net-mvc – 如何在ASP.NET MVC视图中使用扩展
- [译]ASP.NET Core 2.0 带初始参数的中间件
- ASP.Net – App_Data&App_Code文件夹?
- asp.net-mvc-3 – ASP.NET MVC强类型HTML帮助程序
- asp.net – ASP .NET AJAX和JQuery
- asp.net-mvc – 主机名中没有尾部斜杠,HttpRespo