Qual é a melhor maneira de reutilizar as funções no ambiente Flex MVC?
-
06-07-2019 - |
Pergunta
Estou usando uma arquitetura MVC de CairnGorm para o meu projeto atual.
Eu tenho vários comandos que usam o mesmo tipo de função que retorna um valor. Eu gostaria de ter essa função em um só lugar e reutilizá -la, em vez de duplicar o código em cada comando. Qual é a melhor maneira de fazer isso?
Solução
Crie uma classe estática ou método estático em uma de suas classes de Cairngorm.
class MyStatic
{
public static function myFunction(value:String):String
{
return "Returning " + value;
}
}
Então, onde você deseja usar sua função:
import MyStatic;
var str:String = MyStatic.myFunction("test");
Outra opção é criar uma função de nível superior (a la "rastreio"). Confira este post que escrevi aqui.
Outras dicas
Você tem muitas opções aqui - funções definidas publicamente em seu modelo ou controlador, como:
var mySharedFunction:Function = function():void
{
trace("foo");
}
... Métodos estáticos em classes novas ou existentes, etc. As melhores práticas provavelmente depende do que a função precisa fazer. Você pode elaborar?
Crie uma classe base abstrata para seus comandos e adicione sua função no escopo protegido. Se você precisar reutilizá -lo em qualquer outro lugar, refatore -o em um método estático público em uma classe de utilitário.