javascript代码调试
Debug for javascript code
我正在开发MVC应用程序,希望只有在调试模式下才能运行JavaScript中的一些代码。我不希望在发布代码时运行该代码。
换句话说,对于javascript/jQuery,有没有类似于C#中的以下代码?
#if (DEBUG)
// debugging code block here
#else
// release code block here
#endif
我建议在您的问题中使用构造,并在视图模型中设置一些内容来包括/排除javascript。
public ActionResult XXX()
{
var vm=new MyViewModel(); //or just use ViewBag/ViewData
#if (DEBUG)
vm.RunJS=true;
#else
vm.RunJS=false;
#endif
return View(vm);
}
那么在你看来
@if(Model.RunJS)
{
<script ...></script>
}
或者使用类似的构造将DEBUG状态传递给javascript。
<script type="text/javascript">
startMyJavascript(@Model.IsDebug?"true":"false");
</script>
(对Razor语法不太确定,但我认为上面的内容很好)
当然。这是JavaScript版本。
var DEBUG = true;
if(DEBUG) {
// debug code
} else {
// production code
}
您可以随时将ViewBag与@Html.Raw()一起使用。我偶尔会这样做,效果很好。
控制器:
#if DEBUG
ViewBag.JavaScript = "String representation of JS code";
#endif
return View();
视图:
@Html.Raw(ViewBag.JavaScript)
我还建议使用包含,如
<script src="@Url.Content("~/Scripts/jquery.validate.min.js")" type="text/javascript"></script>
而不是原始的JavaScript,以避免将所有这些混乱都放在控制器中。
相关文章:
- 如何调试Javascript代码或函数
- 调试此代码?警报不起作用
- 如何在 JavaScript 代码中调试点击事件处理
- 调试一个简单的jQuery函数;想知道是否与其他代码冲突
- 广告块加调试,undersanding代码库
- 使用Google闭包编译器调试代码删除
- 如何使用SAML和C#调试Windows Phone 8.1应用程序的Javascript代码
- 在vs.net 2010中调试JavaScript代码
- 如何使eval'd调试器可访问的javascript代码
- 在与WebPack捆绑的Visual Studio中调试JavaScript代码
- 如果调试器关闭,Internet Explorer将出现运行代码问题
- 是否有可能在 WebBrowser 控件中调试 JavaScript 代码
- 如何调试遗留的javascript代码(适用于IE,但在Google Chrome中不正常)
- 使用闭包编译器简单优化从函数内部删除调试代码
- 如何使用 Google Closure API 移除调试代码
- 在部署到生产环境时设置开发环境标志并消除调试代码
- 动态启用/禁用调试代码
- 如何使用WebMatrix和Visual Studio调试代码
- JavaScript forEach()调试:代码审查
- Javascript结构,以便轻松地提供不同级别的调试代码