标签: bundling-and-minification

Bundler不包括.min文件

我有一个奇怪的问题,mvc4捆绑包不包括扩展名为.min.js的文件

在我的BundleConfig类中,我声明了

public static void RegisterBundles(BundleCollection bundles)
{
    bundles.Add(new ScriptBundle("~/Scripts/jquery")
        .Include("~/Scripts/jquery-1.8.0.js")
        .Include("~/Scripts/jquery.tmpl.min.js"));            
}
Run Code Online (Sandbox Code Playgroud)

在我看来,我宣布

<html>
    <head>
    @Scripts.Render("~/Scripts/jquery")
    </head><body>test</body>
</html>
Run Code Online (Sandbox Code Playgroud)

当它呈现时,它只会呈现

<html>
    <head>
         <script src="/Scripts/jquery-1.8.0.js"></script>
    </head>
    <body>test</body>
</html>
Run Code Online (Sandbox Code Playgroud)

如果我将jquery.tmpl.min.js重命名为jquery.tmpl.js(并相应地更新bundle中的路径),则会正确呈现这两个脚本.

是否有一些配置设置导致它忽略'.min.js'文件?

javascript c# asp.net-mvc-4 bundling-and-minification

260
推荐指数
3
解决办法
9万
查看次数

MVC4样式包给403

捆绑时/缩小时启用,我的一些捆绑的似乎都在浏览器(用/结束)无效的URL和IIS提供了一个403 Forbidden错误,好像试图列出文件夹中的内容.

我的捆绑设置方式没有区别 - 它们不是.min.css,访问权限是正确的等等.

.net asp.net-mvc razor asp.net-mvc-4 bundling-and-minification

88
推荐指数
1
解决办法
3万
查看次数

如何强制BundleCollection刷新MVC4中的缓存脚本包

...或者我是如何学会停止担心的,只是针对来自Microsoft的完全未记录的API编写代码.是否有官方System.Web.Optimization发布的实际文档?'cuz我肯定找不到任何,没有XML文档,所有的博客文章都引用了与实际上不同的RC API.安美居..

我正在编写一些代码来自动解析javascript依赖项,并从这些依赖项中动态创建bundle.一切都很好,除非您编辑脚本或以其他方式进行更改,这些更改会影响捆绑而不重新启动应用程序,否则不会反映更改.所以我添加了一个禁用缓存依赖项的选项,以便在开发中使用.

但是,即使捆绑集合已更改,显然也会BundleTables缓存URL .例如,在我自己的代码中,当我想重新创建一个包时,我做了类似这样的事情:

// remove an existing bundle
BundleTable.Bundles.Remove(BundleTable.Bundles.GetBundleFor(bundleAlias));

// recreate it.
var bundle = new ScriptBundle(bundleAlias);

// dependencies is a collection of objects representing scripts, 
// this creates a new bundle from that list. 

foreach (var item in dependencies)
{
    bundle.Include(item.Path);
}

// add the new bundle to the collection

BundleTable.Bundles.Add(bundle);

// bundleAlias is the same alias used previously to create the bundle,
// like "~/mybundle1" 

var bundleUrl …
Run Code Online (Sandbox Code Playgroud)

c# asp.net asp.net-mvc-4 bundling-and-minification asp.net-optimization

84
推荐指数
3
解决办法
6万
查看次数

ASP.NET捆绑 - 捆绑文件更改后捆绑包不更新(返回304未修改)

我正在尝试使用ASP.NET MVC 4应用程序进行ASP.NET Bundling.情况是我想制作一个CDN样式的服务,它有JS和CSS文件,您可以从其他类型地址的网站处理:http://www.mycdn.com/scripts/plugin/js,捆绑并缩小所有包含的.js文件.

我对一个文件的bundle配置如下所示:

bundles.Add(new ScriptBundle("~/Scripts/plugin/pluginjs").Include("~/Scripts/plugin/jquery.plugin.js"));
Run Code Online (Sandbox Code Playgroud)

但是,当我这样做时,即使我更改原始js文件后,捆绑包也不会更新.当我刷新浏览器时,我继续获得304 Not Modified,并且不会更新缩小文件的内容.如何更新捆绑包,因为捆绑旧内容是没用的?我尝试了各种方法,但无法找到解决方案.

提前致谢!

asp.net bundle bundling-and-minification asp.net-optimization

69
推荐指数
5
解决办法
5万
查看次数

CssRewriteUrlTransform有或没有虚拟目录

我们在我们的站点中使用MVC Bundling,CssRewriteUrlTransform确保图像URL在动态bundle css文件中工作.

但这只适用于不使用虚拟目录的情况,即

http://localhost/VirttualDir不行,但http://localhost/确实如此.这是因为CssRewriteUrlTransform在重写URL时,转换不会考虑虚拟文件夹.因此,如果图像真实路径是localhost/vdir/content/img/foo.png它将重写它localhost/content/img/foo.png是错误的

c# web-optimization asp.net-mvc-4 bundling-and-minification

61
推荐指数
3
解决办法
2万
查看次数

gulp将所有css文件缩小为单个文件

我有gulp任务脚本如下,

// loads various gulp modules
var gulp = require('gulp');
var concat = require('gulp-concat');
var minifyCSS = require('gulp-minify-css');
var autoprefixer = require('gulp-autoprefixer');
var rename = require('gulp-rename');

// create task
gulp.task('css', function(){
    gulp.src('src/css/**/*.css')
        .pipe(minifyCSS())
        .pipe(rename('style.min.css'))
        .pipe(autoprefixer('last 2 version', 'safari 5', 'ie 8', 'ie 9'))
        .pipe(gulp.dest('dist/css'))
});
Run Code Online (Sandbox Code Playgroud)

如何将src/css中的所有css文件缩小为dist/css/style.min.css中的单个文件?

node.js bundling-and-minification gulp

55
推荐指数
1
解决办法
6万
查看次数

MVC Bundling和CSS相对URL

使用CssRewriteUrlTransform时,MVC的捆绑在CSS图像中返回错误的URL:

我有一个内联网应用程序,其URL是,例如:http://usid01-srv002/MyApplication.它位于IIS的"默认网站"中.

其中包含以下内容BundleConfig.cs:

bundles.Add(new StyleBundle("~/bundles/jcss")
    .Include("~/Scripts/JQueryUI/css/*.css", new CssRewriteUrlTransform())
);
Run Code Online (Sandbox Code Playgroud)

捆绑系统为这些CSS文件中引用的任何图像生成错误的URL,从而产生404甚至JQueryUI经过良好测试的CSS文件(来自FireBug):

错误生成的URL导致404错误

例如,它正在产生

http://usid01/path/foo.png
Run Code Online (Sandbox Code Playgroud)

什么时候应该生成:

http://usid01/MyApplication/path/foo.png
Run Code Online (Sandbox Code Playgroud)

如何让捆绑系统生成指向正确位置的URL?

css asp.net-mvc relative-path bundling-and-minification asp.net-mvc-5

45
推荐指数
3
解决办法
4万
查看次数

使ASP.NET捆绑为CSS捆绑指定media = screen

我只是尝试ASP.NET 4.5捆绑和缩小,并遇到了一个问题.

我有大约10个css文件,其中2个最初在布局中使用属性media ="screen"引用.

由于将css添加到bundle的语法不允许你指定应该添加这样的属性(有意义,因为该属性将适用于整个bundle),我希望看到@ Styles.Render的重载,允许我指定html属性,就像在其他Html助手中一样,但没有.

有一个丑陋的解决方案,因为我知道创建的bundle的url,我可以自己制作标签,但是我会失去ASP.NET处理的缓存机制,允许它自己渲染标签.

有没有办法做到这一点,我错过了什么?或者这仅仅是对设计团队的监督?

asp.net-mvc asp.net-mvc-4 bundling-and-minification asp.net-optimization

42
推荐指数
3
解决办法
2万
查看次数

协调ASP.NET脚本包和源映射

有没有办法设置默认值System.Web.Optimization.ScriptBundle来为捆绑和缩小的文件生成源映射?是否有一个等效的解决方案,除了必须在每次构建之前预先生成包和源映射?

javascript asp.net bundling-and-minification

39
推荐指数
2
解决办法
7918
查看次数

使用MVC4 Bundling和HTML5异步属性异步加载javascript文件

HTML5具有脚本文件的异步属性,以启用异步加载.

<script type="text/javascript" src="myScript.js" async></script>
Run Code Online (Sandbox Code Playgroud)

我可以通过引用我的MVC4捆绑来利用这一点,就像这样引用捆绑包.

<script type="text/javascript" src='@Scripts.Url("~/bundles/jquery")' async></script>
Run Code Online (Sandbox Code Playgroud)

但这意味着我的脚本即使在调试模式下也是捆绑在一起的.

那么我怎样才能在调试时利用捆绑和异步属性而不会失去非缩小.

html5 asp.net-mvc-4 bundling-and-minification asp.net-optimization

38
推荐指数
1
解决办法
2万
查看次数