我有一个 ASP.NET MVC 网站, View 中包含大量 JavaScript。
我有几个问题:
是否可以将 JavaScript 函数放入外部 .js 文件中(在某些函数中使用 razor 语法来获取模型值)?
如何调试我的应用程序?目前我只是在代码中添加了一些alert(),但这不是一个好的解决方案。
如何记录数据?我在 C# 部分使用 log4net,但有没有办法在 JavaScript 中做到这一点?至少进入 Visual Studio 的“输出”部分。
最佳答案
1) 是的,我通常创建一个对象文字来充当简单的类。然后我在名为 init 的方法上创建一个方法,并将所有必需的值从 View 传递给 document.ready 上的它。
在外部文件中创建您的类,如下所示:
var someHelper = {
init: function (options) {
},
otherMethod: function (params) {
}
};
然后从 Razor View 我做这样的事情
<script>
var options = @{new System.Web.Script.Serialization.JavaScriptSerializer().Serialize(Model);};
someHelper.init(options)
</script>
如果您将初始化脚本放在 View 的早期,您就可以在代码中调用您需要的方法,就好像它是内联的一样。
2) 使用 console.log(objectToInspect) 检查开发人员控制台中的值。这应该适用于 chrome、firefox 和 IE(IE 需要在调用之前打开控制台)。
3) 在您的 asp.net 项目中创建一个至少接受字符串的路由。在您的 javascript 设置中,有一个方法通过 ajax 调用将数据(作为字符串)发布到您的 asp.net 端点/路由。使用 jquery 构建请求可能是最简单的方法。另外,如果您想在 jquery 加载/准备就绪之前记录数据,您可以将日志记录连接到一个方法,该方法可以简单地将错误推送到数组中,一旦加载 jquery,将该数据与任何新数据一起刷新/发布到端点日志记录。
关于javascript - ASP.NET MVC - 使用 JavaScript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23990204/