【发布时间】:2011-12-27 07:30:12
【问题描述】:
我需要从约定驱动的位置(如 ~/ClientApp/Controllers/Home/Home.js,如果加载位于 ~/Views/Home/Home.cshtml 的视图)编写 js 文件的内容。我该怎么做?
示例:如果文件 ~/Views/Home/Home.cshtml 看起来像:
<div id="some-partial-view">
<!-- ... -->
</div>
文件 ~/ClientApp/Controllers/Home/Home.Controller.js 看起来像
function HomeController() {
//some code
}
那么网络服务器返回的渲染视图应该看起来像(如果使用 fiddler)
<!--ommitted <html> <body> tags -->
<div id="some-partial-view">
<!-- ... -->
</div>
<script type="text/javascript">
function HomeController() {
//some code
}
</script>
一种方法是添加一个 HTML Helper 来执行此操作,例如:
<div id="some-partial-view" ng:Controller="HomeController">
<!-- ... -->
</div>
@Html.IncludeController("HomeController")
但是,我不想在所有部分视图中重复这一点。
有什么想法吗?
【问题讨论】:
-
在您的局部视图中引用您的 javascript 文件,
-
我想跳过这一步,因此问题。想在视图渲染时编织js文件。还想减少往返,因此这不是一个选择。
-
不清楚你说的“视图渲染时编织js文件”是什么意思?
-
为了清楚起见已经更新了问题:)
标签: asp.net-mvc razor