Javascript 可以在发布时更改my js中的变量值吗
我运行VS2010 Web Developer,并将javascript变量设置为一个值以进行测试。当我发布我的作品时,我认为变量应该是影响最终行为的另一个值。因此,在rumpa.js文件中,我有以下内容Javascript 可以在发布时更改my js中的变量值吗,javascript,visual-studio-2010,ide,publish,Javascript,Visual Studio 2010,Ide,Publish,我运行VS2010 Web Developer,并将javascript变量设置为一个值以进行测试。当我发布我的作品时,我认为变量应该是影响最终行为的另一个值。因此,在rumpa.js文件中,我有以下内容 $(document).ready(function () { var iable = "test value"; ...} 但是,在执行发布之前,我手动编辑该行,使其看起来如下所示 $(document).ready(function () { var iable = "pub
$(document).ready(function () {
var iable = "test value";
...}
但是,在执行发布之前,我手动编辑该行,使其看起来如下所示
$(document).ready(function () {
var iable = "publish value";
...}
它工作得很好,除了我经常忘记将iable
更改为“发布值”
,直到一个不高兴的客户打电话来。这不是最佳的开发技术
我是否可以通过某种方式使VS更改我的源代码,这样我就不必这样做了?您可以使用配置转换文件。这样,您可以为每个发布配置文件设置不同的设置。更多信息可以在这里找到:Rob Angelier答案中引用的链接对我不起作用。由于我今天也在寻找相同的问题,我发现您可以使用#DEBUG: 但是,有时我需要将调试版本发布到服务器,而此方法不允许发布调试版本。因此,您可以检查服务器名称:
var iable;
if (window.location.hostname=="localhost")
{
var iable = "test value";
} else
{
var iable = "publish value";
}
或者,我使用服务作为:
(function () {
"use strict";
angular
.module("common.services", ["ngResource"])
.constant("appSettings",
{
commonsetting: false,
});
if (window.location.hostname=="localhost")
{
// local dev settings
angular
.module("common.services", ["ngResource"])
.constant("appSettings",
{
iable = "test value";
});
} else
{
// remote settings
angular
.module("common.services", ["ngResource"])
.constant("appSettings",
{
var iable = "publish value";
});
}
}());
希望这能节省一些时间。我读了你的问题两遍,仍然不确定你在找什么。他似乎想经营一家makro,或者在点击“发布”时改变他的价值@Rob Angelier我正在寻找一种方法,让VS在发布网站之前自动编辑一行代码,然后在上传完成后将其更改回来。是的,那太好了。但我在工具/选项等中看不到这样的功能…所以我理解,您希望您的live和devel环境具有不同定义的某些变量?作为一般设置(这不仅仅适用于JS/VS/web),最简单的实现是在live和devel环境中定义时有一个单独的配置文件,它被排除在常规的“发布”过程之外,然后从该配置中读取您的
iable
var。我明白了!我必须同意@BenParsons的观点。您可以使用配置转换文件,详细信息如下:
(function () {
"use strict";
angular
.module("common.services", ["ngResource"])
.constant("appSettings",
{
commonsetting: false,
});
if (window.location.hostname=="localhost")
{
// local dev settings
angular
.module("common.services", ["ngResource"])
.constant("appSettings",
{
iable = "test value";
});
} else
{
// remote settings
angular
.module("common.services", ["ngResource"])
.constant("appSettings",
{
var iable = "publish value";
});
}
}());