Este documento foi traduzido por IA. Para informações precisas, consulte a versão em inglês.
ctx.libs
ctx.libs é o namespace unificado para as bibliotecas integradas no RunJS, contendo bibliotecas comumente usadas como React, Ant Design, dayjs e lodash. Não é necessário import ou carregamento assíncrono; elas podem ser usadas diretamente via ctx.libs.xxx.
Casos de Uso
Visão Geral das Bibliotecas Integradas
Aliases de Nível Superior
Para compatibilidade com códigos legados, algumas bibliotecas também estão expostas no nível superior: ctx.React, ctx.ReactDOM, ctx.antd e ctx.dayjs. Recomenda-se usar consistentemente ctx.libs.xxx para facilitar a manutenção e a busca na documentação.
Carregamento Preguiçoso (Lazy Loading)
lodash, formula e math utilizam carregamento preguiçoso: um import dinâmico é acionado apenas quando ctx.libs.lodash é acessado pela primeira vez, e o cache é reutilizado posteriormente. React, antd, dayjs e antdIcons são pré-configurados pelo contexto e estão disponíveis imediatamente.
Exemplos
Renderização com React e Ant Design
Usando Hooks
Usando Ícones
Processamento de Datas com dayjs
Funções Utilitárias com lodash
Cálculos de Fórmulas
Expressões Matemáticas com math.js
Observações
- Misturando com ctx.importAsync: Se um React externo for carregado via
ctx.importAsync('react@19'), o JSX usará essa instância. Nesse caso, não misture comctx.libs.antd. O Ant Design deve ser carregado para corresponder a essa versão do React (ex:ctx.importAsync('antd@5.x'),ctx.importAsync('@ant-design/icons@5.x')). - Múltiplas Instâncias do React: Se ocorrer um erro de "Invalid hook call" ou se o hook dispatcher for nulo, isso geralmente é causado por múltiplas instâncias do React. Antes de ler
ctx.libs.Reactou chamar Hooks, executeawait ctx.importAsync('react@versão')primeiro para garantir que a mesma instância do React seja compartilhada com a página.
Relacionado
- ctx.importAsync() - Carregue módulos ESM externos sob demanda (ex: versões específicas de React, Vue)
- ctx.render() - Renderiza conteúdo para um contêiner

