当前位置: 首页 > 面试题库 >

如何在AngularJs服务中创建自定义事件

丁光华
2023-03-14
问题内容

我正在从事AngularJs项目。我有一项可以设置和删除某些按钮上的事件的服务。我不想与按钮直接交互的另一项服务利用了该服务。但是,我希望通过第一个服务过滤并在第二个服务中处理按钮单击事件。由于我不希望第二个服务知道按钮,因此我认为我需要在第一个服务中创建一个自定义事件。单击按钮后,如何创建自定义事件并触发它?

提前致谢。


问题答案:

如果要在服务/指令之间发送事件,请使用broadcast

$rootScope.$broadcast('buttonPressedEvent');

并像这样接收它:

$rootScope.$on('buttonPressedEvent', function () {
             //do stuff
        })


 类似资料:
  • 我们不仅可以分配事件处理程序,还可以从 JavaScript 生成事件。 自定义事件可用于创建“图形组件”。例如,我们自己的基于 JavaScript 的菜单的根元素可能会触发 open(打开菜单),select(有一项被选中)等事件来告诉菜单发生了什么。另一个代码可能会监听事件,并观察菜单发生了什么。 我们不仅可以生成出于自身目的而创建的全新事件,还可以生成例如 click 和 mousedow

  • 我明白,对于处理器,我只需在文件夹下的中编写代码,然后从中创建一个nar文件。但是在控制器服务的情况下,我有4个文件夹生成。我可以看到两个java文件。 > 显示在文件夹下 显示在文件夹下 现在,为什么在自定义控制器服务的情况下生成两个java文件,而在自定义处理器的情况下只生成一个java文件。另外,由于我试图模仿服务,其中的java文件中有两个我应该复制服务的原始源代码。 请从头开始指导我创建

  • 问题内容: 我正在尝试在Log4j2中编写自己的RewritePolicy。该文档指出: RewritePolicy是一个接口,允许实现在将LogEvent传递给Appender之前检查并可能对其进行修改。RewritePolicy声明一个必须执行的名为rewrite的方法。该方法通过LogEvent传递,并且可以返回相同事件或创建一个新事件。 这是我的 java类 : 这是我的 yaml配置 文

  • 问题内容: 我正在http://www.cafeaulait.org/javafaq.html上阅读#6.10项,然后我开始怀疑大型企业如何创建自己的JVM实现。一个人会尝试(或可行)实验性的东西吗? 问题答案: 从技术上讲,创建该新JVM所需的所有信息都是该语言和目标平台的公共规范。即使字节码解释在很大程度上相同,JVM还是需要根据其是要在台式机还是手机上运行而有所不同。 一些开始寻找信息的地方

  • 我使用CloudWatchLogs作为源,使用lambda函数调用事件作为目标。 在当前的方法中,每当创建日志流get时,lambda就会激发。但我想要的是,在Cloudwatch规则中编写一个自定义事件模式,这样,只有当日志消息包含异常或错误时,它才会触发lambda。这可能吗? 因为目前我从lambda中的CloudwatchLogs获取的事件不包含有关日志消息的任何详细信息。因此,我如何创建

  • 问题内容: 我正在尝试在javaFX中创建自定义光标。这是我的代码: Windows 8.1的游标创建无效吗? 问题答案: 检出ImageCursor.getBestSize()方法和ImageCursor.getMaximumColors()并查看它们返回的内容,然后尝试匹配最佳大小和最大颜色的自定义光标图像。对于Windows 8.1,这很可能是32x32的光标。 这是来自javadoc 的引