Este documento foi traduzido por IA. Para informações precisas, consulte a versão em inglês.
ctx.blockModel
O modelo do bloco pai (instância de BlockModel) onde o campo JS / bloco JS atual está localizado. Em cenários como JSField, JSItem e JSColumn, ctx.blockModel aponta para o bloco de formulário ou bloco de tabela que contém a lógica JS atual. Em um JSBlock independente, ele pode ser null ou o mesmo que ctx.model.
Cenários de uso
Nota:
ctx.blockModelestá disponível apenas em contextos RunJS onde existe um bloco pai. Em JSBlocks independentes (sem um formulário/tabela pai), ele pode sernull. Recomenda-se realizar uma verificação de valor nulo antes do uso.
Definição de Tipo
O tipo específico depende do tipo do bloco pai: blocos de formulário são geralmente FormBlockModel ou EditFormModel, enquanto blocos de tabela são geralmente TableBlockModel.
Propriedades Comuns
Relação com ctx.model e ctx.form
Em um JSField, ctx.model é o modelo do campo, e ctx.blockModel é o bloco de formulário ou tabela que contém esse campo; ctx.form é tipicamente ctx.blockModel.form.
Exemplos
Tabela: Obter linhas selecionadas e processar
Cenário de Formulário: Validar e Atualizar
Ouvir mudanças no formulário
Acionar a re-renderização do bloco
Observações
- Em um JSBlock independente (sem um bloco de formulário ou tabela pai),
ctx.blockModelpode sernull. Recomenda-se usar o encadeamento opcional (optional chaining) ao acessar suas propriedades:ctx.blockModel?.resource?.refresh?.(). - Em JSField / JSItem / JSColumn,
ctx.blockModelrefere-se ao bloco de formulário ou tabela que contém o campo atual. Em um JSBlock, ele pode ser o próprio bloco ou um bloco de nível superior, dependendo da hierarquia real. resourceexiste apenas em blocos de dados;formexiste apenas em blocos de formulário. Blocos de tabela geralmente não possuem umform.
Relacionado
- ctx.model: O modelo do contexto de execução atual.
- ctx.form: Instância de formulário, comumente usada em blocos de formulário.
- ctx.resource: Instância de recurso (equivalente a
ctx.blockModel?.resource, use diretamente se disponível). - ctx.getModel(): Obter outros modelos de bloco por UID.

