在我的 ASP.NET MVC4 Web 应用程序中,我将有许多 View ,其中应用程序在 View 中充当单页应用程序 (SPA),但导航到另一个 View 是通过传统导航完成的。每个 View /页面就像它自己的 SPA。因此,我想为每个页面提供一个特定的 viewmodel.js 文件,因为当我只查看其中一个 View 时,我不想对所有 View 应用 knockout 绑定(bind)。
我的问题是,我应该为每个 videomodel.js 文件创建一个单独的 bundle ,还是可以/应该以某种方式完全规避特定于 View 的脚本的捆绑?规避捆绑的最佳方法是什么?
我尝试过简单地附加
<script src="~/Scripts/app/inventory.viewmodel.js" type="text/javascript" />
到我的 Index.vbhtml 文件(我的 View ),但它出现在其余脚本之上,即使它位于 @Section Scripts
block 之后。我尝试将其包含在 @Section Scripts
block 中,但我无法找出正确的语法来避免使用 @Scripts.Render
。
我的问题不仅是如何规避捆绑,而是是否规避捆绑是最佳选择。
编辑我从自闭脚本标记切换为
<script src="~/Scripts/app/inventory.viewmodel.js" type="text/javascript"></script>
嵌入到@Section Scripts
block 中,然后它就可以工作,但我仍然想知道这是否可取。
最佳答案
为每个页面创建一个 bundle 并没有什么问题,事实上,这可能是解决您的问题的最佳方法。规避它会产生更多工作,您需要实现自己的缩小和编译优化器,只是为了支持 JavaScript 的子集。
关于javascript - 如何最好地规避 MVC4 脚本捆绑,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20146217/