我有一个ang2,VS 2015,ASP.NET 4.6.1项目,但它是一个非mvc。所以我无法访问<environment>
。也使用gulp,以便可以作为解决方案的一部分。
如何配置静态文件(如index.html)以使用缩小版文件?目前我正在使用gulp来完成这项工作。
我看了一下这个,但它适用于MVC项目。 https://docs.asp.net/en/latest/fundamentals/environments.html
更新:
示例:
如何让wooroot文件夹中的Index.html指向开发中的非缩小脚本,然后指向生产中的缩小版本?就像在url中的示例一样。使用MVC时,您可以将其替换为代码。没有MVC,似乎不可能。
答案 0 :(得分:0)
您可以使用自定义选项调用app.UseStaticFiles
来更改静态文件的位置。
if (env.IsDevelopment())
{
app.UseStaticFiles(new StaticFileOptions()
{
FileProvider = new PhysicalFileProvider(
Path.Combine(Directory.GetCurrentDirectory(), @"MyStaticFiles")),
RequestPath = new PathString("/StaticFiles")
});
}
请注意,可能存在多个app.UseStaticFiles
次呼叫。有关详细信息,请参阅Working with Static Files文档。
答案 1 :(得分:0)
好的找到了我正在寻找的答案。
使用gulp-html-replace,https://www.npmjs.com/package/gulp-html-replace
<!-- build:<name> -->
Everything here will be replaced
<!-- endbuild -->
示例:
的index.html
<!-- build:css -->
<link rel="stylesheet" href="css/normalize.css">
<link rel="stylesheet" href="css/main.css">
<!-- endbuild -->
</head>
<body>
<!-- build:js -->
<script src="js/player.js"></script>
<script src="js/monster.js"></script>
<script src="js/world.js"></script>
<!-- endbuild -->
gulpfile.js
var gulp = require('gulp');
var htmlreplace = require('gulp-html-replace');
gulp.task('default', function() {
gulp.src('index.html')
.pipe(htmlreplace({
'css': 'styles.min.css',
'js': 'js/bundle.min.js'
}))
.pipe(gulp.dest('build/'));
});