【发布时间】:2014-12-11 10:10:54
【问题描述】:
我用 angularjs 编程已经有一段时间了,但是,我开始在我的应用程序中使用 reloadOnSearch,起初我认为这可以为我节省不必要的控制器重新加载和针对我的 API 的 ajax 调用。
例如,假设我有一个事物列表,然后将它们呈现在视图中。当您第一次访问此视图时,它会从 API 中获取项目列表并显示它们,当您单击某个项目时,它会将 ?id=xxx&view=show 查询参数添加到 url,而无需重新加载控制器。
当我们从已经加载的列表中访问单个项目时,它只是从我们已经拥有的列表中获取并呈现它。但是,如果我们强制重新加载页面,控制器现在意识到它必须从 API 中获取它,因为它不存在于列表集合中。
起初这似乎是一件很棒的事情。然而,当我想到它时,我现在必须管理整个控制器的状态,而之前我可以将状态包含在控制器的单个函数中。
我似乎无法确定 reloadOnSearch 是否是邪恶的并且应该避免,或者是否值得保留。你有什么意见?
另外,使用 ui-router 之类的东西会更好吗?我刚刚看了一个介绍视频,暗示可以更好地控制状态。
【问题讨论】:
标签: angularjs angular-ui-router ngroute