logologo
Começar
Manual
Desenvolvimento
Plugins
API
Início
English
简体中文
日本語
한국어
Español
Português
Deutsch
Français
Русский
Italiano
Türkçe
Українська
Tiếng Việt
Bahasa Indonesia
ไทย
Polski
Nederlands
Čeština
العربية
עברית
हिन्दी
Svenska
Começar
Manual
Desenvolvimento
Plugins
API
Início
logologo
Visão geral

Bloco

Visão geral

Bloco de dados

Tabela
Formulário
Detalhes
Lista
Cartão em grade
Gráfico

Bloco de filtro

Formulário

Outros blocos

Painel de operação
Iframe
Markdown
Bloco JS

Itens de configuração do bloco

Escopo de dados
Método de carregamento de dados
Layout
Regras de vinculação de blocos
Regras de Vinculação de Campos
Regras de Ordenação
Ordenação por Arrastar e Soltar
Exclusão de bloco
Título do bloco
Altura do bloco
Rascunho do formulário

Campo

Visão geral

Itens de configuração geral

Campo da tabela
Campos de detalhes
Campos de filtro do formulário
Campo do formulário

Itens de configuração específicos

Data
Gerenciador de arquivos
Subformulário
Seletor suspenso
Seletor de dados
Seletor em cascata
Subtabela (Edição em Linha)
Subtabela (Edição em Pop-up)
Subdetalhes
Título
Campo JS
Item JS
Coluna JS

Itens de Configuração do Campo

Valor padrão
Rótulo do Campo
Rótulo de exibição
Informação de Dica do Campo
Escopo de dados
Componente do Campo
Formatação de valor numérico
Modo
Obrigatório
Campo de título
Regras de validação
Componente de campo de relacionamento

Operação

Visão geral

Itens de configuração de operação

Botão de edição
Confirmação secundária
Atribuição de Valor ao Campo
Vincular fluxo de trabalho
Janela pop-up de edição
Regras de vinculação de operação

Tipo de operação

Adicionar
Visualizar
Excluir
Editar
Copiar
Importar
Importar Pro
Exportar
Exportar Pro
Exportar Anexos
Filtrar
Link
Abrir Pop-up
Atualizar
Enviar Dados
Acionar fluxo de trabalho
Atualizar registro
Atualização em Lote
Edição em Lote
Adicionar sub-registro
Ação JS
Permissões de operação

Avançado

Regras de vinculação
Fluxo de eventos
Variável
RunJS
Modelo de UI
Previous PagePainel de operação
Next PageMarkdown
Aviso de tradução por IA

Esta documentação foi traduzida automaticamente por IA.

#Bloco Iframe

Bloco: iframeCommunity Edition+

#Introdução

O bloco Iframe permite que você incorpore páginas web ou conteúdo externo na página atual. Você pode integrar facilmente aplicações externas à página configurando uma URL ou inserindo diretamente código HTML. Ao usar uma página HTML, você pode personalizar o conteúdo de forma flexível para atender a necessidades específicas de exibição. Este método é particularmente adequado para cenários que exigem exibições personalizadas, pois pode carregar recursos externos sem redirecionamento, melhorando a experiência do usuário e a interatividade da página.

20251026205102

#Sintaxe de Template

No modo HTML, o conteúdo do bloco suporta o uso da sintaxe do motor de template Liquid.

20251026205331

#Suporte a Variáveis

#Suporte a Variáveis em HTML

  • Suporta a seleção de variáveis do contexto atual do bloco usando o seletor de variáveis.

20251026205441

  • Suporta a injeção e o uso de variáveis na aplicação através de código.

Você também pode injetar variáveis personalizadas na aplicação através de código e usá-las em HTML. Por exemplo, criando uma aplicação de calendário dinâmico usando Vue 3 e Element Plus:

<!doctype html>
<html lang="zh">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Vue3 CDN Example</title>
    <script src="https://cdn.bootcdn.net/ajax/libs/vue/3.5.9/vue.global.prod.js"></script>
    <script src="https://unpkg.com/element-plus"></script>
    <script src="https://unpkg.com/element-plus/dist/locale/zh-cn"></script>
    <link
      rel="stylesheet"
      href="https://unpkg.com/element-plus/dist/index.css"
    />
  </head>
  <body>
    <div id="app">
      <el-container>
        <el-main>
          <el-calendar v-model="month">
            <div class="header-container">
              <div class="action-group">
                <span class="month-display">{{ month }}</span>
                <el-button-group>
                  <el-button
                    type="primary"
                    :loading="loading"
                    @click="changeMonth(-1)"
                    >Last month</el-button
                  >
                  <el-button
                    type="primary"
                    :loading="loading"
                    @click="changeMonth(1)"
                    >Next month</el-button
                  >
                </el-button-group>
              </div>
            </div>
          </el-calendar>
        </el-main>
      </el-container>
    </div>
    <script>
      const { createApp, ref, provide } = Vue;
      const app = createApp({
        setup() {
          const month = ref(new Date().toISOString().slice(0, 7));
          const loading = ref(false);

          const changeMonth = (offset) => {
            const date = new Date(month.value + '-01');
            date.setMonth(date.getMonth() + offset);
            month.value = date.toISOString().slice(0, 7);
          };
          provide('month', month);
          provide('changeMonth', changeMonth);
          return { month, loading, changeMonth };
        },
      });
      app.use(ElementPlus);
      app.mount('#app');
    </script>
  </body>
</html>

20250320163250

Exemplo: Um componente de calendário simples criado com React e Ant Design (antd), utilizando dayjs para manipular datas.

<!doctype html>
<html lang="zh">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>React CDN Example</title>
    <script src="https://unpkg.com/react@18/umd/react.production.min.js"></script>
    <script src="https://unpkg.com/react-dom@18/umd/react-dom.production.min.js"></script>
    <link
      rel="stylesheet"
      href="https://cdn.jsdelivr.net/npm/antd/dist/antd.min.css"
    />
    <script src="https://unpkg.com/dayjs/dayjs.min.js"></script>
  </head>
  <body>
    <div id="app"></div>
    <script src="https://cdn.jsdelivr.net/npm/antd/dist/antd.min.js"></script>
    <script>
      document.addEventListener('DOMContentLoaded', function () {
        const { useState } = React;
        const { Calendar, Button, Space, Typography } = window.antd;
        const { Title } = Typography;
        const CalendarComponent = () => {
          const [month, setMonth] = useState(dayjs().format('YYYY-MM'));
          const [loading, setLoading] = useState(false);
          const changeMonth = (offset) => {
            const newMonth = dayjs(month)
              .add(offset, 'month')
              .format('YYYY-MM');
            setMonth(newMonth);
          };
          return React.createElement(
            'div',
            { style: { padding: 20 } },
            React.createElement(
              'div',
              {
                style: {
                  display: 'flex',
                  justifyContent: 'space-between',
                  alignItems: 'center',
                  marginBottom: 16,
                },
              },
              React.createElement(Title, { level: 4 }, month),
              React.createElement(
                Space,
                null,
                React.createElement(
                  Button,
                  { type: 'primary', loading, onClick: () => changeMonth(-1) },
                  'Last month',
                ),
                React.createElement(
                  Button,
                  { type: 'primary', loading, onClick: () => changeMonth(1) },
                  'Next month',
                ),
              ),
            ),
            React.createElement(Calendar, {
              fullscreen: false,
              value: dayjs(month),
            }),
          );
        };
        ReactDOM.createRoot(document.getElementById('app')).render(
          React.createElement(CalendarComponent),
        );
      });
    </script>
  </body>
</html>

20250320164537

#Suporte a Variáveis em URL

20251026212608

Para mais informações sobre variáveis, consulte Variáveis.