在AS3中放置事件侦听器的最佳位置

卡梅隆·鲍尔(Cameron Ball)

在我的项目中,我有一个主.as,它定义了一个类。

在课堂上,我还有其他各种对象。其中之一包含有关应用程序状态的信息,我将其注入其他类中,以便他们都知道发生了什么。

当事情发生变化时,状态类还会调度一个自定义事件。

我的问题是,做这样的事情是否不好?

public class SomeClass {

    private var appState:AppState;

    public function SomeClass(appState:AppState) {
        this.appState = appState;
        this.appState.addEventListener(AppState.INFO_UPDATE, this.appStateUpdated);
    }

    private function appStateUpdated(e:Event) {
        //do something with new appstate
    }

}

我喜欢这种方式,但是我不确定以后是否还会再咬我。这是一个好的方法吗?

无效的

是的,这样的事件系统或多或少创建了观察者模式。(也就是说,一个对象观察到另一个对象的变化)

MVC模式是基于观察者模式的,它是几乎每种应用程序以一种或另一种方式的基础。

其中的一部分是V,view它观察到M的model变化。在您的情况下,appState可能是,modelSomeClass可能是view(一类)。为了观察modelview接收到对该model对象的引用这通常是完全按照您的方式进行的。

请记住,您绝对不要强行使用任何模式。上面的要点是告诉您,将可观察变量传递给类似的类非常普遍。但是,这并不意味着它一定是您所处情况的正确选择。(很可能是正确的选择,只是不认为这样做本身就是正确的选择)

appState销毁SomeClass对象时,请不要忘记清除对它的引用

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

删除事件侦听器as3

来自分类Dev

CreateJS是否包含与AS3中的“ ENTER_FRAME”类似的事件侦听器?

来自分类Dev

从AS3中的侦听器获取点击坐标

来自分类Dev

从AS3中的侦听器获取点击坐标

来自分类Dev

事件侦听器的最佳设计模式

来自分类Dev

AS3使用许多事件侦听器导致问题,如何减少?

来自分类Dev

将事件侦听器放置在单个Cookie上

来自分类Dev

jQuery中的单击事件侦听器

来自分类Dev

Java 中的事件(侦听器)

来自分类Dev

在何处添加事件侦听器的最佳实践

来自分类Dev

最佳实践的确认:删除事件侦听器

来自分类Dev

Web应用程序的事件侦听器最佳实践

来自分类Dev

处理多个事件侦听器的最佳方法

来自分类Dev

最佳实践的确认:删除事件侦听器

来自分类Dev

AS3循环按钮(添加侦听器和功能)

来自分类Dev

D3 图形事件侦听器之外的任何位置

来自分类Dev

在mousemove事件侦听器功能的主体中设置左侧位置不起作用

来自分类Dev

即使已经有侦听器,我是否可以在函数中放置开关?

来自分类Dev

获取高级侦听器中d3中事件目标的引用?

来自分类Dev

在iframe中的Vue 3实例中延迟注册事件侦听器

来自分类Dev

表事件侦听器

来自分类Dev

Javascript事件侦听器

来自分类Dev

Java中侦听器的正确(也是最佳)收集类型

来自分类Dev

如何将变量传递给d3中的事件侦听器方法

来自分类Dev

如何在d3.js中自定义事件侦听器?

来自分类Dev

如何将变量传递给d3中的事件侦听器方法

来自分类Dev

如何在d3.js中自定义事件侦听器?

来自分类Dev

向 Symfony3 中动态添加的字段添加事件侦听器

来自分类Dev

如何从reactjs中的文档中删除事件侦听器

Related 相关文章

热门标签

归档