suchen
HeimWeb-FrontendBootstrap-TutorialEine kurze Analyse der automatischen Spaltengenerierungsfunktion der Tabellenkomponente in Bootstrap Blazor

Die folgende Bootstrap-Kolumne wird Ihnen helfen, die Tabellenkomponente in Bootstrap Blazor zu verstehen und die automatische Spaltengenerierungsfunktion der Tabellenkomponente vorzustellen. Ich hoffe, dass sie für alle hilfreich ist!

Eine kurze Analyse der automatischen Spaltengenerierungsfunktion der Tabellenkomponente in Bootstrap Blazor

Bootstrap Blazor ist eine UI-Komponentenbibliothek auf Unternehmensebene, die an mobile Geräte angepasst ist und verschiedene gängige Browser unterstützt. Sie wurde in mehreren Bereitstellungsprojekten verwendet. Dieser Komponentensatz kann den Entwicklungszyklus erheblich verkürzen und Entwicklungskosten sparen. Bisher wurden mehr als 70 Komponenten entwickelt und verpackt.

  • Die Open-Source-Adresse von Gitee lautet: https://gitee.com/LongbowEnterprise/BootstrapBlazor. Die Open-Source-Adresse von Github lautet: https://github.com/ArgoZhang/BootstrapBlazor. Online-Demo-Website : https://www.blazor.zone

  • Table sollte die Kernkomponente der Management-Website-Entwicklung sein. Viele Funktionen können von Table abgeleitet werden Dieser Komponentensatz hat fast keine Bekanntheit, daher wissen nicht viele Leute davon. Viele Freunde haben jedoch einige andere Open-Source-Blazor-Projekte verwendet und festgestellt, dass die Komponente Table überhaupt nicht verwendet werden kann.

      Das Laden von Daten ist zu langsam
  • Es fehlen zu viele Funktionen

  • Ab heute werde ich die explosive Leistung und einfache Bedienung von BootstrapBlazor, der stärksten King-Komponente in, offiziell vorstellen Die KomponentenbibliothekTabelle, da es zu viele Funktionen gibt, verfügt allein die aktuelle Website im Beispiel über fast 60 Funktionen, die im tatsächlichen Kampf benötigt werden. Wir werden sie im Folgenden einzeln vorstellen

Table 应该是做管理型网站开发的核心组件了,通过 Table 可以衍生出非常多的功能,由于这套组件几乎没有宣传,导致知道的人不是很多,但是很多小伙伴都是使用了其他一些开源 blazor 项目后发现 Table 组件根本无法使用。

  • 加载数据太卡
  • 功能缺失太多

那么从今天开始正式介绍一下性能爆炸,操作简单的 BootstrapBlazor 组件库中的最强王者组件 Table,由于功能实在是太多,仅示例目前网站中就有近 60 个各种实战中需要的功能,再接下来的时间里我们一一介绍

自动生成列功能

使用 Table 组件时大多数组件都是要求用户输入显示那些列,这样会在 razor 文件中增加大量列相关信息,如下所示

<TableColumn @bind-Field="@context.DateTime" Width="180" />
<TableColumn @bind-Field="@context.Name" />
<TableColumn @bind-Field="@context.Address" />
<TableColumn @bind-Field="@context.Education" />
<TableColumn @bind-Field="@context.Count" />
<TableColumn @bind-Field="@context.Complete">

如果一个实体类属性太多时。这里书写起来就会篇幅非常长,BootstrapBlazor 组件库的 Table 组件有一个属性 AutoGenerateColumns ,当设置其值为 true 时,会根据绑定模型的属性进行自动生成列信息,为开发人员节约了大量的代码,先看示例

<Table TItem="BindItem" IsStriped="true" IsBordered="true" IsMultipleSelect="true"
            ShowToolbar="true" ShowExtendButtons="true" AutoGenerateColumns="true"
            OnQueryAsync="@OnEditQueryAsync" OnResetSearchAsync="@OnResetSearchAsync"
            OnSaveAsync="@OnSaveAsync" OnDeleteAsync="@OnDeleteAsync">
</Table>

怎么样?通过这一行代码就完成了表格的全自动生成,并且提供了增、删、改、查、过滤、排序等等全部功能。效果图如下

是不是有一些心动,这么少的代码居然可以实现这么多功能?没错!用 BootstrapBlazor 组件库的 Table 组件开发就是这么简单。

划重点

使用 Table 组件 UI 层面的基本操作均已经封装到组件功能中,开发人员只需要将精力转移到数据库的操作上去,如例子中的

  • OnQueryAsync 数据查询方法
  • OnSaveAsync 数据保存方法(内部自动判断主键执行插入或者更新操作)
  • OnDeleteAsync 数据删除方法 (可自行进行真实删除或者标记删除操作)
  • OnResetSearchAsync 重置搜索方法

实现原理

Table 组件为泛型组件,通过 TItem 设定绑定模型类型为 BindItem 实体类,在这个实体类中通过 AutoGenerateColumnAttributeAutomatisch generierte Spaltenfunktion

Bei Verwendung der Tabelle-Komponente erfordern die meisten Komponenten, dass der Benutzer eingibt, welche Spalten angezeigt werden sollen , das in razor code> angezeigt wird. Fügen Sie der Datei eine große Anzahl spaltenbezogener Informationen hinzu, wie unten gezeigt<p><pre class='brush:php;toolbar:false;'>[AttributeUsage(AttributeTargets.Property)] public class AutoGenerateColumnAttribute : Attribute, ITableColumn { /// &lt;summary&gt; /// 获得/设置 显示顺序 /// &lt;/summary&gt; public int Order { get; set; } /// &lt;summary&gt; /// 获得/设置 是否忽略 默认为 false 不忽略 /// &lt;/summary&gt; public bool Ignore { get; set; } /// &lt;summary&gt; /// 获得/设置 当前列是否可编辑 默认为 true 当设置为 false 时自动生成编辑 UI 不生成此列 /// &lt;/summary&gt; public bool Editable { get; set; } = true; /// &lt;summary&gt; /// 获得/设置 当前列编辑时是否只读 默认为 false /// &lt;/summary&gt; public bool Readonly { get; set; } /// &lt;summary&gt; /// 获得/设置 是否允许排序 默认为 false /// &lt;/summary&gt; public bool Sortable { get; set; } /// &lt;summary&gt; /// 获得/设置 是否为默认排序列 默认为 false /// &lt;/summary&gt; public bool DefaultSort { get; set; } /// &lt;summary&gt; /// 获得/设置 是否为默认排序规则 默认为 SortOrder.Unset /// &lt;/summary&gt; public SortOrder DefaultSortOrder { get; set; } /// &lt;summary&gt; /// 获得/设置 是否允许过滤数据 默认为 false /// &lt;/summary&gt; public bool Filterable { get; set; } /// &lt;summary&gt; /// 获得/设置 是否参与搜索 默认为 false /// &lt;/summary&gt; public bool Searchable { get; set; } /// &lt;summary&gt; /// 获得/设置 列宽 /// &lt;/summary&gt; public int? Width { get; set; } /// &lt;summary&gt; /// 获得/设置 是否固定本列 默认 false 不固定 /// &lt;/summary&gt; public bool Fixed { get; set; } /// &lt;summary&gt; /// 获得/设置 列是否显示 默认为 true 可见的 /// &lt;/summary&gt; public bool Visible { get; set; } = true; /// &lt;summary&gt; /// 获得/设置 本列是否允许换行 默认为 false /// &lt;/summary&gt; public bool AllowTextWrap { get; set; } /// &lt;summary&gt; /// 获得/设置 本列文本超出省略 默认为 false /// &lt;/summary&gt; public bool TextEllipsis { get; set; } /// &lt;summary&gt; /// 获得/设置 列 td 自定义样式 默认为 null 未设置 /// &lt;/summary&gt; public string? CssClass { get; set; } /// &lt;summary&gt; /// 获得/设置 显示节点阈值 默认值 BreakPoint.None 未设置 /// &lt;/summary&gt; public BreakPoint ShownWithBreakPoint { get; set; } /// &lt;summary&gt; /// 获得/设置 格式化字符串 如时间类型设置 yyyy-MM-dd /// &lt;/summary&gt; public string? FormatString { get; set; } /// &lt;summary&gt; /// 获得/设置 文字对齐方式 默认为 Alignment.None /// &lt;/summary&gt; public Alignment Align { get; set; } /// &lt;summary&gt; /// 获得/设置 字段鼠标悬停提示 /// &lt;/summary&gt; public bool ShowTips { get; set; } /// &lt;summary&gt; /// 获得/设置 列格式化回调委托 /// &lt;/summary&gt; public Func&lt;object?, Task&lt;string&gt;&gt;? Formatter { get; set; } /// &lt;summary&gt; /// 获得/设置 编辑模板 /// &lt;/summary&gt; public RenderFragment&lt;object&gt;? EditTemplate { get; set; } /// &lt;summary&gt; /// 获得/设置 显示模板 /// &lt;/summary&gt; public RenderFragment&lt;object&gt;? Template { get; set; } /// &lt;summary&gt; /// 获得/设置 搜索模板 /// &lt;/summary&gt; public RenderFragment&lt;object&gt;? SearchTemplate { get; set; } /// &lt;summary&gt; /// 获得/设置 过滤模板 /// &lt;/summary&gt; public RenderFragment? FilterTemplate { get; set; } /// &lt;summary&gt; /// 获得/设置 列头显示文字未设置时显示字段名称 /// &lt;/summary&gt; public string? Text { get; set; } }</pre><a href="https://www.php.cn/course/list/15.html" target="_blank" textvalue="bootstrap教程">Wenn es zu viele Attribute einer Entitätsklasse gibt. Es würde sehr lange dauern, hier zu schreiben. Die <code>Table-Komponente der BootstrapBlazor-Komponente hat eine Eigenschaft AutoGenerateColumns, wenn ihr Wert auf true

, Spalteninformationen werden automatisch basierend auf den Attributen des gebundenen Modells generiert, was Entwicklern viel Code erspart. Wie wäre es, wenn Sie sich zuerst das Beispiel rrreee ansehen? Durch diese Codezeile wird die Tabelle vollautomatisch generiert und alle Funktionen wie Hinzufügen, Löschen, Ändern, Überprüfen, Filtern, Sortieren usw. werden bereitgestellt. Das Rendering ist wie folgt🎜🎜🎜 🎜Ja, sind Sie nicht ein bisschen begeistert, dass mit so wenig Code tatsächlich so viele Funktionen erreicht werden können? Das ist richtig! So einfach ist die Entwicklung mit der Table-Komponente der BootstrapBlazor-Komponentenbibliothek. 🎜🎜🎜Emphasis🎜🎜🎜Verwenden Sie die Table-Komponente. Entwickler müssen ihre Energie nur auf Datenbankoperationen übertragen, wie im Beispiel 🎜🎜OnQueryAsync Datenabfragemethode 🎜🎜OnSaveAsync Datenspeichermethode (ermittelt intern automatisch den Primärschlüssel zum Durchführen von Einfüge- oder Aktualisierungsvorgängen) 🎜🎜OnDeleteAsync Datenlöschmethode (Sie können eine echte Löschung durchführen oder die Löschung selbst markieren) 🎜🎜OnResetSearchAsync Suchmethode zurücksetzen 🎜🎜🎜🎜Implementierungsprinzip🎜 🎜🎜Die Table-Komponente ist eine generische Komponente, und der Bindungsmodelltyp wird über TItem auf die Entitätsklasse BindItem festgelegt Entitätsklasse, übergeben AutoGenerateColumnAttribute legt die Regeln für die automatische Generierung von Spalten fest. Die spezifischen Parameter lauten wie folgt: 🎜rrreee🎜Es gibt eine große Anzahl von Parametern, die eingeschränkt werden können. Schauen Sie sich einfach die Kommentare dazu an wissen. Weitere Dokumentation finden Sie im Online-Demonstrationsdokument https://www.blazor.zone/tables/column🎜🎜Weitere Informationen zu Bootstrap finden Sie unter: 🎜Bootstrap-Tutorial🎜! ! 🎜

Das obige ist der detaillierte Inhalt vonEine kurze Analyse der automatischen Spaltengenerierungsfunktion der Tabellenkomponente in Bootstrap Blazor. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme
Dieser Artikel ist reproduziert unter:博客园. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen
Die Auswirkungen von Bootstrap: Beschleunigung der WebentwicklungDie Auswirkungen von Bootstrap: Beschleunigung der WebentwicklungApr 12, 2025 am 12:05 AM

Bootstrap beschleunigt die Webentwicklung und durch Bereitstellung vordefinierter Stile und Komponenten können Entwickler schnell reaktionsschnelle Websites erstellen. 1) Es verkürzt die Entwicklungszeit, z. B. das Abschluss des Grundlayouts innerhalb weniger Tage im Projekt. 2) Durch SASS -Variablen und Mixins können benutzerdefinierte Stile spezifische Anforderungen entsprechen. 3) Verwenden der CDN -Version kann die Leistung optimieren und die Ladegeschwindigkeit verbessern.

Bootstrap verstehen: Kernkonzepte und MerkmaleBootstrap verstehen: Kernkonzepte und MerkmaleApr 11, 2025 am 12:01 AM

Bootstrap ist ein Front-End-Frontwork von Open Source, und seine Hauptfunktion besteht darin, Entwicklern dabei zu helfen, reaktionsschnelle Websites schnell aufzubauen. 1) Es bietet vordefinierte CSS-Klassen und JavaScript-Plug-Ins, um die Implementierung komplexer UI-Effekte zu erleichtern. 2) Das Arbeitsprinzip von Bootstrap beruht auf seinen CSS- und JavaScript -Komponenten, um reaktionsschnelles Design durch Medienabfragen zu realisieren. 3) Beispiele für die Nutzung sind die grundlegende Nutzung wie das Erstellen von Schaltflächen und die erweiterte Nutzung, wie z. B. benutzerdefinierte Stile. 4) Zu den häufigen Fehlern gehört das Fehlschreiben von Klassennamen und fälschlicherweise Einführung von Dateien. Es wird empfohlen, Browser -Entwickler -Tools zum Debuggen zu verwenden. 5) Die Leistungsoptimierung kann durch benutzerdefinierte Build -Tools erreicht werden. Best Practices umfassen vordefinierte mit semantischen HTML und Bootstrap vordefiniert

Bootstrap Deep Dive: Responsive Design & Advanced Layout -TechnikenBootstrap Deep Dive: Responsive Design & Advanced Layout -TechnikenApr 10, 2025 am 09:35 AM

Bootstrap implementiert reaktionsschnelles Design durch Grid -Systeme und Medienabfragen, wodurch die Website an verschiedene Geräte angepasst wird. 1. Verwenden Sie eine vordefinierte Klasse (z. B. Col-SM-6), um die Säulenbreite zu definieren. 2. Das Gittersystem basiert auf 12 Spalten, und es ist erforderlich zu beachten, dass die Summe 12. 3 nicht überschreitet. Verwenden Sie Breakpoints (wie SM, MD, LG), um das Layout unter verschiedenen Bildschirmgrößen zu definieren.

Bootstrap-Interviewfragen: Lande deinen Traum-Front-End-JobBootstrap-Interviewfragen: Lande deinen Traum-Front-End-JobApr 09, 2025 am 12:14 AM

Bootstrap ist ein Open-Source-Front-End-Frontwork für die schnelle Entwicklung reaktionsschneller Websites und Anwendungen. 1. Es bietet die Vorteile von reaktionsschnellem Design, konsistenten UI -Komponenten und einer schnellen Entwicklung. 2. Das Grid-System verwendet das Flexbox-Layout, das auf einer 12-Spal-Struktur basiert, und wird durch Klassen wie .Container, .Row und .Col-SM-6 implementiert. 3.. Benutzerdefinierte Stile können implementiert werden, indem Sie SASS -Variablen ändern oder CSS überschreiben. 4. häufig verwendete JavaScript -Komponenten umfassen Modalboxen, Karusselldiagramme und Falten. 5. Die Optimierungsleistung kann erreicht werden, indem nur die erforderlichen Komponenten, die CDN und die Komprimierung von Zusammenführungsdateien geladen werden.

Bootstrap & JavaScript -Integration: Dynamische Funktionen und FunktionenBootstrap & JavaScript -Integration: Dynamische Funktionen und FunktionenApr 08, 2025 am 12:10 AM

Bootstrap und JavaScript können nahtlos integriert werden, um Webseiten dynamische Funktionen zu ermöglichen. 1) Verwenden Sie JavaScript, um Bootstrap -Komponenten wie Modalboxen und Navigationsstangen zu manipulieren. 2) Sicherstellen, dass JQuery -Lasten korrekt sind und häufige Integrationsprobleme vermeiden. 3) Durch Ereignisüberwachung und DOM -Operationen komplexe Benutzerinteraktion und dynamische Effekte erzielen.

So erhalten Sie die Bootstrap -SuchleisteSo erhalten Sie die Bootstrap -SuchleisteApr 07, 2025 pm 03:33 PM

So verwenden Sie Bootstrap, um den Wert der Suchleiste zu erhalten: Bestimmt die ID oder den Namen der Suchleiste. Verwenden Sie JavaScript, um DOM -Elemente zu erhalten. Holen Sie sich den Wert des Elements. Führen Sie die erforderlichen Maßnahmen aus.

So fügen Sie Bilder auf Bootstrap einSo fügen Sie Bilder auf Bootstrap einApr 07, 2025 pm 03:30 PM

Es gibt verschiedene Möglichkeiten, Bilder in Bootstrap einzufügen: Bilder direkt mit dem HTML -IMG -Tag einfügen. Mit der Bootstrap -Bildkomponente können Sie reaktionsschnelle Bilder und weitere Stile bereitstellen. Legen Sie die Bildgröße fest und verwenden Sie die IMG-Fluid-Klasse, um das Bild anpassungsfähig zu machen. Stellen Sie den Rand mit der img-beliebten Klasse ein. Stellen Sie die abgerundeten Ecken ein und verwenden Sie die IMG-Rund-Klasse. Setzen Sie den Schatten, verwenden Sie die Schattenklasse. Größen Sie die Größe und positionieren Sie das Bild im CSS -Stil. Verwenden Sie mit dem Hintergrundbild die CSS-Eigenschaft im Hintergrund.

So richten Sie das Framework für Bootstrap einSo richten Sie das Framework für Bootstrap einApr 07, 2025 pm 03:27 PM

Um das Bootstrap -Framework einzurichten, müssen Sie die folgenden Schritte befolgen: 1. Verweisen Sie die Bootstrap -Datei über CDN; 2. Laden Sie die Datei auf Ihrem eigenen Server herunter und hosten Sie sie. 3.. Fügen Sie die Bootstrap -Datei in HTML hinzu; 4. Kompilieren Sie Sass/weniger bei Bedarf; 5. Importieren Sie eine benutzerdefinierte Datei (optional). Sobald die Einrichtung abgeschlossen ist, können Sie die Grid -Systeme, -Komponenten und -stile von Bootstrap verwenden, um reaktionsschnelle Websites und Anwendungen zu erstellen.

See all articles

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
3 Wochen vorBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
3 Wochen vorBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. So reparieren Sie Audio, wenn Sie niemanden hören können
3 Wochen vorBy尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Wie man alles in Myrise freischaltet
3 Wochen vorBy尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Herunterladen der Mac-Version des Atom-Editors

Herunterladen der Mac-Version des Atom-Editors

Der beliebteste Open-Source-Editor

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

MinGW – Minimalistisches GNU für Windows

MinGW – Minimalistisches GNU für Windows

Dieses Projekt wird derzeit auf osdn.net/projects/mingw migriert. Sie können uns dort weiterhin folgen. MinGW: Eine native Windows-Portierung der GNU Compiler Collection (GCC), frei verteilbare Importbibliotheken und Header-Dateien zum Erstellen nativer Windows-Anwendungen, einschließlich Erweiterungen der MSVC-Laufzeit zur Unterstützung der C99-Funktionalität. Die gesamte MinGW-Software kann auf 64-Bit-Windows-Plattformen ausgeführt werden.

MantisBT

MantisBT

Mantis ist ein einfach zu implementierendes webbasiertes Tool zur Fehlerverfolgung, das die Fehlerverfolgung von Produkten unterstützen soll. Es erfordert PHP, MySQL und einen Webserver. Schauen Sie sich unsere Demo- und Hosting-Services an.