【问题标题】:Which folder(s) should I put my MVC view-specific javascript files in?我应该将我的 MVC 视图特定的 javascript 文件放在哪个文件夹中?
【发布时间】:2012-09-07 23:41:07
【问题描述】:
我想知道对于特定于视图的 javascript 文件位置的最佳做法是什么。
我的一些视图有 1700 多行代码,其中 70% 是 javascript,所以我将它们放入 .js 文件中以利用捆绑/缩小的优势。
我知道核心脚本文件(例如 jquery)通常进入根 /Scripts 文件夹,但是有很多视图我需要这样做(50+),所以我想知道我是否应该把它们在各自的视图文件夹中(例如:/Views/Account/ViewName.js),或者我应该将它们全部转储到根目录下的 /Scripts 文件夹中。
【问题讨论】:
标签:
c#
javascript
model-view-controller
【解决方案1】:
在我的实践中,我基本上做了以下静态资产结构:
public
-- css
-- javascript
---- controllers
---- lib
-- otherAssets
使用一些控制器逻辑,我为每个控制器添加一个文件到/public/javascript/controllers,这样我的控制器特定代码就全部捆绑在一起了。
您可以轻松地将其装配为每个模型,然后在您的 js 文件中使用面向对象的方法,如下所示:
myModel = {
pageA: function() {
//stuff
},
pageB: function() {
//stuff
}
};
这样做意味着您需要一个父 javascript 文件,该文件基本上可以找到正确的 javascript 模型对象(即myModel),然后是控制器方法(pageA),然后调用该函数。
任何比这更复杂的事情都会真正开始将您带入需要像 require.js 这样的 javascript 资产管理器的领域