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

Blok

Ikhtisar

Blok Data

Tabel
Formulir
Detail
Daftar
Kartu Grid
Grafik

Blok Filter

Formulir

Blok Lainnya

Panel Operasi
Iframe
Blok Kutipan
Markdown
Blok JS

Pengaturan Blok

Cakupan Data
Tata Letak
Aturan Interaksi Blok
Aturan Interaksi Kolom
Aturan Pengurutan
Hapus Blok
Judul Blok

Kolom

Ikhtisar

Pengaturan Umum

Kolom Tabel
Kolom Detail
Kolom Formulir Filter
Kolom Formulir

Pengaturan Khusus

Tanggal
Manajer File
Sub-formulir
Pilihan Dropdown
Pemilih Data
Pilihan Bertingkat
Sub-tabel
Sub-detail
Judul
Kolom JS
Item JS
Kolom JS

Pengaturan Kolom

Nilai Default
Label Kolom
Tampilkan Label
Petunjuk Kolom
Cakupan Data
Komponen Kolom
Format Angka
Mode
Wajib Diisi
Kolom Judul
Aturan Validasi
Komponen Kolom Relasi

Aksi

Ikhtisar

Pengaturan Aksi

Tombol Edit
Konfirmasi Ulang
Penetapan Nilai Kolom
Ikat Alur Kerja
Popup Edit
Aturan Interaksi Aksi

Tipe Aksi

Tambah
Lihat
Hapus
Edit
Impor
Impor Pro
Ekspor
Ekspor Pro
Ekspor Lampiran
Filter
Tautan
Buka Popup
Segarkan
Kirim Data
Picu Alur Kerja
Perbarui Catatan
Perbarui Massal
Tambah Sub-catatan
Aksi JS
Izin Aksi

Lanjutan

Aturan Interaksi
Alur Peristiwa
Variabel
RunJS
Previous PagePanel Operasi
Next PageBlok Kutipan
TIP

Dokumen ini diterjemahkan oleh AI. Untuk ketidakakuratan apa pun, silakan lihat versi bahasa Inggris

#Blok Iframe

This feature is provided by the plugin «Blok: iframe»

#Pengantar

Blok Iframe memungkinkan Anda menyematkan halaman web atau konten eksternal ke dalam halaman saat ini. Anda dapat dengan mudah mengintegrasikan aplikasi eksternal ke dalam halaman dengan mengonfigurasi URL atau langsung menyisipkan kode HTML. Saat menggunakan halaman HTML, Anda dapat secara fleksibel menyesuaikan konten untuk memenuhi kebutuhan tampilan tertentu. Metode ini sangat cocok untuk skenario yang memerlukan tampilan yang disesuaikan, karena dapat memuat sumber daya eksternal tanpa pengalihan, sehingga meningkatkan pengalaman pengguna dan interaktivitas halaman.

20251026205102

#Sintaks Template

Dalam mode HTML, konten blok mendukung penggunaan sintaks Liquid template engine.

20251026205331

#Dukungan Variabel

#Dukungan Variabel HTML

  • Mendukung pemilihan variabel dari konteks blok saat ini menggunakan pemilih variabel. 20251026205441

  • Mendukung injeksi dan penggunaan variabel dalam aplikasi melalui kode.

Anda juga dapat menyuntikkan variabel kustom ke dalam aplikasi melalui kode dan menggunakannya dalam HTML. Contohnya, membuat aplikasi kalender dinamis menggunakan Vue 3 dan 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

Contoh: Komponen kalender sederhana yang dibuat dengan React dan Ant Design (antd), menggunakan dayjs untuk menangani tanggal.

<!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

#Dukungan Variabel URL

20251026212608

Untuk informasi lebih lanjut tentang variabel, lihat Variabel.