我有一个 Angular 应用程序。它运行良好,但随着我的应用程序变得越来越大,我担心必须在每个 Controller 中注入(inject)大量依赖项。
例如
app.controller('viewapps',[
'$scope','Appfactory','Menu','$timeout','filterFilter','Notice', '$routeParams',
function($scope,Appfactory,Menu,$timeout,filterFilter,Notice,$routeParams) {
//controller code..
}])
我确信依赖项列表将来会增加。我在这里做错了什么吗?这是正确的方法吗?有效处理此问题的最佳方法是什么?
最佳答案
如果没有确切的用例,或者没有看到 Controller 中的确切代码,很难具体说明,但看起来您的 Controller 可能做了太多事情(或者当您稍后添加内容时可能最终会做太多事情)。您可以做三件事:
将更多逻辑委托(delegate)给注入(inject)的服务。
分为不同的 Controller ,因此每个 Controller 只有(大约)1 个职责。
将其分成指令,每个指令都有自己的 Controller 和模板,并允许通过指令的属性和
scope
选项传入选项并给出输出。这通常是我的首选选择,因为您最终会构建一套可重用的组件,每个组件都有一个迷你 API。这样使用指令很好,至少在我看来是这样。它们不仅仅用于处理原始 Javascript 事件或直接访问 DOM。
关于angularjs - 如何避免Angularjs中的大量依赖,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23382109/