如何扩展引导 ui 控制器
Posted
技术标签:
【中文标题】如何扩展引导 ui 控制器【英文标题】:How to extend a bootstrap ui controller 【发布时间】:2016-02-13 17:47:26 【问题描述】:我已经在我的 Angular 项目中包含了 bootstrap ui 模块,现在我想扩展“ui-bootstrap-tpls.js”中的 datepicker 控制器“UibDatepickerController”等更多功能。
好的,我可以编辑 ui 引导文件,但这不是我想要的。
我想要一个模块化文件(可能是一个自己的指令),这样当 ui 引导更新到来时不会出现大问题。
这可能吗?最佳做法是什么?
【问题讨论】:
是否要更改驻留在 ui-bootstrap-tpls.js 中的 html 模板? 没有。我想为控制器添加更多功能。 【参考方案1】:您可以尝试注入 $controller
并像这样扩展:
app.directive('myUiDirective', function ($controller)
return
link: function (scope, iElem, iAttr)
angular.extend(this, $controller('UibDatepickerController', $scope: scope));
);
但是我不确定您是否能够从不同的模块(在这种情况下,从ui.bootstrap
)获取控制器。
【讨论】:
在这种情况下,我收到 $injector 错误,因为它在另一个模块中。以上是关于如何扩展引导 ui 控制器的主要内容,如果未能解决你的问题,请参考以下文章