【问题标题】:What is the best way to reuse functions in Flex MVC environment?在 Flex MVC 环境中重用函数的最佳方式是什么?
【发布时间】:2010-09-30 14:02:43
【问题描述】:

我正在为我当前的项目使用 Cairngorm MVC 架构。

我有几个命令使用相同类型的返回值的函数。我想把这个函数放在一个地方,并重用它,而不是在每个命令中复制代码。最好的方法是什么?

【问题讨论】:

    标签: apache-flex model-view-controller actionscript code-reuse cairngorm


    【解决方案1】:

    在您的 Cairngorm 类之一中创建静态类或静态方法。

    class MyStatic
    {
        public static function myFunction(value:String):String
        {
            return "Returning " + value;
        }
    }
    

    然后你想在哪里使用你的功能:

    import MyStatic;
    
    var str:String = MyStatic.myFunction("test");
    

    另一种选择是创建一个顶级函数(a la “trace”)。看看我写的这篇文章here

    【讨论】:

      【解决方案2】:

      您有很多选择——在您的模型或控制器中公开定义的函数,例如:

      var mySharedFunction:Function = function():void
      {
         trace("foo");
      }
      

      ... 新类或现有类的静态方法等。不过,最佳实践可能取决于函数需要做什么。能详细点吗?

      【讨论】:

        【解决方案3】:

        为您的命令创建一个抽象基类并将您的函数添加到受保护的范围内。如果您需要在其他任何地方重用它,请将其重构为实用程序类的公共静态方法。

        【讨论】:

          猜你喜欢
          • 2023-03-15
          • 2010-09-23
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2018-02-01
          • 2011-01-07
          相关资源
          最近更新 更多