对我来说,AngularJS指令看起来像包装功能,就像一些Web组件。我试图从Bootstrap中包装进度条,即:
我做了基本指令很好,但我想在该组件中添加一些API。我可以在 controller 中使用的一些函数可以控制组件行为。例如。启动,停止,重置,gotopercent等我在控制器上创建了这些函数,但我认为这不是最佳实践,因为函数应该属于指令,而不是控制器,因此我可以轻松地在其他页面中重用它。
问题:
如何在AngularJS指令中创建函数,允许我控制组件行为。
答案 0 :(得分:1)
我在控制器上创建了这些函数,但我认为这不是最佳实践,因为函数应该属于指令,而不是控制器,因此我可以轻松地在其他页面中重用它。
好吧,不。函数属于控制器 - 但是指令可以有自己的控制器,您可以在其中定义独立于您的“指令API” ApplicationController 或 PageController 。
看看angular-ui/bootstrap回购,那里已经有了bootstrap progressbar的指令。