gpt4 book ai didi

c# - 根据应用程序设置有选择地输出 javascript 的好方法

转载 作者:行者123 更新时间:2023-11-30 18:55:21 25 4
gpt4 key购买 nike

我正在开发一个网站,其中包含几个不同的 javascript 文件和库。出于优化目的,我实现了 YUI Compressor for .Net

这会将我的 javascript 文件最小化并合并到一个文件中。

现在我已将其放入 MSBuild 脚本中,该脚本会自动执行压缩和最小化并将其输出到我选择的文件中。但是,我仍然希望在我的开发环境中保留原始的 javascript 文件。我的问题很简单:

是否有一种好方法可以根据调试设置来选择要使用的 javascript?这样我就不必在每次发布构建时手动更改 MasterPage。

请允许我举例说明。

如果我在 Debug="true"中运行,我希望我的 MasterPage 包含以下 javascript:

<script type="text/javascript" src="first.js"></script>
<script type="text/javascript" src="second.js"></script>
<script type="text/javascript" src="third.js"></script>
<script type="text/javascript" src="fourth.js"></script>

如果我在 Debug="false"中运行,我希望在 MasterPage 中输出:

<script type="text/javascript" src="compressedAndMinimized.js"></script>

我在这里缺少一个优雅的解决方案吗?

最佳答案

您可以使用预处理器:

<% #if(DEBUG) %>
<script type="text/javascript" src="first.js"></script>
<script type="text/javascript" src="second.js"></script>
<script type="text/javascript" src="third.js"></script>
<script type="text/javascript" src="fourth.js"></script>
<% #else %>
<script type="text/javascript" src="compressedAndMinimized.js"></script>
<% #endif %>

在我的项目中,我在环境变量中定义平台(例如“本地”、“开发”、“测试版”和“生产”)并通过配置类访问它,但我想检查调试/ Release模式也适用。

编辑

根据 #DEBUG Preprocessor statements in ASPX page ,ASPX 文件中使用的 DEBUG 变量是从 Web.config 中提取的,而不是项目的当前构建配置。这可能对您仍然有用,但您的部署脚本在部署到生产环境时需要更改您的 Web.config。

关于c# - 根据应用程序设置有选择地输出 javascript 的好方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2326871/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com