Javascript 解释angularjs指令在给定情况下的正确使用

Javascript 解释angularjs指令在给定情况下的正确使用,javascript,angularjs,angularjs-directive,Javascript,Angularjs,Angularjs Directive,从我到目前为止对angular的理解和使用来看,指令用于DOM操作,控制器用于良好的控制 我知道指令应该是通用的和可重用的,我正在努力将迷你向导转换为指令并使其通用。也许真正的通用性要求太高了 基本上是它的div,点击按钮->(一些逻辑发生)->淡出.回调(fadein new div)->再次重复->在最后一个窗口点击一个按钮并返回到原始div 现在,我使用fadeOut/fadeIn使用嵌套的jquery选择器来实现这一点 它工作得很好,我只想从控制器那里打破它,尽可能地维护“最佳实践” 真

从我到目前为止对angular的理解和使用来看,指令用于DOM操作,控制器用于良好的控制

我知道指令应该是通用的和可重用的,我正在努力将迷你向导转换为指令并使其通用。也许真正的通用性要求太高了

基本上是它的div,点击按钮->(一些逻辑发生)->淡出.回调(fadein new div)->再次重复->在最后一个窗口点击一个按钮并返回到原始div

现在,我使用fadeOut/fadeIn使用嵌套的jquery选择器来实现这一点

它工作得很好,我只想从控制器那里打破它,尽可能地维护“最佳实践”

真正让我困惑的是,指令似乎是在运行时不断更新的函数,而fadeIn/Out功能实际上是onClick类型的东西


任何建议都会很有帮助。

我同意上面的评论,特别是你可以通过提供一个例子来帮助阐明事情。我不完全确定指令在运行时是什么意思。然而,作为一个例子,我有几个可能的建议

  • 创建一个jquery插件并尝试使用jq指令,它可以处理许多插件
  • angularui还有一个可能适合您的动画指令
  • 您将看到的一种技术是,有时会使用监视程序或超时来检查@mark rajcok建议的状态
    在我看来,从你提供的情况来看,这是一个已经解决的非常可解决的问题。我建议您为想法下载angularui和配套的引导代码。免责声明:我已经完成了angularui项目的工作

    如果您使用$watch、$observe、bind()等,则指令只能“运行”多次。如果您的指令没有这些指令,并且指令的模板只使用ng click,那么当您单击时,事情只会“运行”。好的,但这仍然不能回答我关于如何混合dom manip、控制器逻辑、,然后返回没有用户输入的dom manip。您需要做哪些不由用户输入触发的dom操作?指令可以定义自己的控制器(如果有帮助的话)。要得到正确的答案,您可能应该尝试在示例plunker中描述您的关注点。