O sistema de contexto do FlowEngine do NocoBase é dividido em três camadas, cada uma correspondendo a um escopo diferente. Usá-las de forma adequada permite o compartilhamento e o isolamento flexível de serviços, configurações e dados, melhorando a manutenibilidade e a escalabilidade do seu negócio.
mode: 'runtime' | 'settings', que correspondem, respectivamente, ao modo de execução e ao modo de configurações.Todos os FlowEngineContext (Contexto Global), FlowModelContext (Contexto do Modelo), FlowRuntimeContext (Contexto de Execução do Fluxo) e outros, são subclasses ou instâncias de FlowContext.
FlowModelContext pode acessar as propriedades e métodos do FlowEngineContext por meio de um mecanismo de delegação, permitindo o compartilhamento de recursos globais.FlowModelContext de um submodelo pode acessar o contexto do modelo pai (relação síncrona) por meio de um mecanismo de delegação, permitindo sobrescrever nomes iguais.FlowRuntimeContext sempre acessa seu FlowModelContext correspondente por meio de um mecanismo de delegação, mas não propaga as alterações para cima.Esta documentação foi traduzida automaticamente por IA.
O FlowRuntimeContext suporta dois modos, que são diferenciados pelo parâmetro mode:
mode: 'runtime' (Modo de execução): Usado durante a fase de execução real do fluxo de trabalho. As propriedades e métodos retornam dados reais. Por exemplo:
mode: 'settings' (Modo de configurações): Usado durante a fase de design e configuração do fluxo de trabalho. O acesso às propriedades retorna uma string de template de variável, facilitando a seleção de expressões e variáveis. Por exemplo:
Esse design de modo duplo garante a disponibilidade dos dados em tempo de execução e facilita a referência de variáveis e a geração de expressões durante a configuração, aumentando a flexibilidade e a usabilidade do FlowEngine.