Javascript 在Angular中使用jquery处理程序

Javascript 在Angular中使用jquery处理程序,javascript,jquery,angularjs,backbone.js,Javascript,Jquery,Angularjs,Backbone.js,我使用Angular已经有一段时间了,我真的发现自己比在主干网和jquery中效率更高,生成的代码也更少。但是,我与其他主要在Backbon/jquery组件/控件中创建的开发人员一起工作,我们都共享这些组件/控件。由于这些是复杂的组件/控件,我无法在Angular中重写它们,因此我需要找到一种从Angular中使用它们的方法 在特定的情况下,我正在处理一个控件,该控件创建一个对话框,允许用户在一系列帮助请求系统中创建条目或记录错误。这段代码在许多应用程序中都可以使用。下面是一个简单的例子:

我使用Angular已经有一段时间了,我真的发现自己比在主干网和jquery中效率更高,生成的代码也更少。但是,我与其他主要在Backbon/jquery组件/控件中创建的开发人员一起工作,我们都共享这些组件/控件。由于这些是复杂的组件/控件,我无法在Angular中重写它们,因此我需要找到一种从Angular中使用它们的方法

在特定的情况下,我正在处理一个控件,该控件创建一个对话框,允许用户在一系列帮助请求系统中创建条目或记录错误。这段代码在许多应用程序中都可以使用。下面是一个简单的例子:

    <div class="foo">Help</div>
注意“foo”用于定位对话框

在Angular中,我尝试创建add ng click指令,并在控制器中处理单击,但未调用ShowHelp。这是角度代码:

    <div class="foo" ng-click="doShowHelp()">Help</div>
我在控制台中看到日志消息,但似乎什么也没有发生。任何关于我做错了什么的想法


提前感谢

您缺少“foo”选择器前面的点

试一试


$(“.foo”).ShowHelp({project:“myproject”,app:“MyApp”})

大多数指令都有函数“link”,具有不同的参数,其中一个是currect指令的DOM元素。大概是这样的:

link: function(scope, element, attrs) {
  element.ShowHelp({project:"myproject", app:"MyApp"});
  ...
}

你能把一个基本的版本扔进一个木桶或小提琴里吗?这可能是一个简单的解决方案,但如果能看到更多的代码,会有所帮助。在您的代码中“
(.foo”)
”实际上是“
(.foo”)
”吗?
$(.foo”).ShowHelp()
做什么?Opps。前导点在真实代码中。用剪切/粘贴的方式进行粘贴。我更新了样本,看起来很有趣。如何连接该指令,以便在用户单击元素ShowHelp()时调用它?否,它将在编译DOM后调用
   $scope.doShowHelp = function() {
        console.log("in doShowHelp");
        $(".foo").ShowHelp({project:"myproject", app:"MyApp"});
   };
link: function(scope, element, attrs) {
  element.ShowHelp({project:"myproject", app:"MyApp"});
  ...
}