1,MVC视图中,JS代码被放在下面的Razor代码中(@section script{})
2,这样做的好处是:在视图进行JS编码时是一个很好 的实践,在共享视图(_layout.cshtml),存在节点(@RenderSection("script",required:false)),在视图执行时,Razor引擎会将JS代码抽调出来,然后在执行的时候将代码放置在这个位置。
3,例如:控制器代码如下:
The name is <span data-bind="text: Name"></span>
@section Scripts{
<script>
function ViewModel() {
this.Name = "";
}
var viewModel = new ViewModel();
ko.applyBindings(viewModel);
</script>
}
布局视图_layout.cshtml代码如下:
<body>
<div class="container body-content">
@RenderBody()
</div>
@Scripts.Render("~/bundles/jquery")
@Scripts.Render("~/bundles/bootstrap")
<script src="~/Scripts/knockout-3.4.0.js"></script>
@RenderSection("scripts", required: false)
</body>
</html>
此时运行会将控制器对应的页面代码放在@RenderBody()处,