- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
Durandal 是在初始加载/前期加载 ViewModels/View 还是按需加载它们。
假设我有一个非常大的网站,每个 View 有 100 个或更多页面,每个 View 都有一个相当大的 viewModel。 Durandal 会预先加载所有这些吗?
每个 View 中的数据调用如何,如果它预先加载它们,是否会触发所有这些调用?
试图了解 Durandal 的行为
最佳答案
Durandal 根据需要(按需)加载 View 和 View 模型。所以在你的例子中,有 100 个 View 和 View 模型,你只会加载你使用的那些。查看浏览器工具的“网络”选项卡,您可以看到它们是按要求出现的。
此外,一旦它们是本地的,它们就会缓存在浏览器中,这是一件好事。
如果您的 View 模型在“激活”时进行数据调用,那么是的,它们将在您每次激活它们时被调用。有关生命周期事件的更多信息,请参阅 Durandal 文档。
但是,如果您运行 optimizer.exe,它会将所有这些打包并预先一次性(缩小)将它们带到客户端。这不是我在开发过程中所做的事情。但是,如果您想在上线后预先加载所有内容,这是一种将整个应用本地化的方法。
对于具有 100 多个 View 的应用程序,我可能会边加载边加载,因为不太可能有人会在一次使用中达到所有 100 个 View (我猜)。这取决于您打算如何使用该应用。
关于single-page-application - durandal 是预先加载所有 ViewModels/Views 还是按需加载?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15181714/
问了这个问题How to reach CSS zen? ,我现在明白我遇到的问题大多与定位有关。我发现一些文章说 CSS 作为布局系统并不总是足够好。 http://echochamber.me/vi
我是一名优秀的程序员,十分优秀!