2020-03-25 14:31:01 +08:00
< p align = "center" >
< a href = "https://yangshunjie.com/ant-design-blazor/" >
2022-06-02 17:35:50 +08:00
< img src = "https://raw.githubusercontent.com/ant-design-blazor/ant-design-blazor/master/logo.svg?sanitize=true" >
2020-03-25 14:31:01 +08:00
< / a >
< / p >
< h1 align = "center" > Ant Design Blazor< / h1 >
< div align = "center" >
2020-06-20 01:03:06 +08:00
一套基于 Ant Design 和 Blazor 的企业级组件库
2020-03-25 14:31:01 +08:00
2023-01-09 00:33:25 +08:00
![Build ](https://img.shields.io/github/actions/workflow/status/ant-design-blazor/ant-design-blazor/nightly-build.yml?style=flat-square )
2020-05-29 00:33:49 +08:00
[![AntDesign ](https://img.shields.io/nuget/v/AntDesign.svg?color=red&style=flat-square )](https://www.nuget.org/packages/AntDesign/)
[![AntDesign ](https://img.shields.io/nuget/dt/AntDesign.svg?style=flat-square )](https://www.nuget.org/packages/AntDesign/)
2020-11-20 12:52:12 +08:00
[![Pro 模板 ](https://img.shields.io/nuget/v/AntDesign.Templates?color=%23512bd4&label=Pro%20模板&style=flat-square )](https://github.com/ant-design-blazor/ant-design-pro-blazor)
2020-08-05 22:36:52 +08:00
[![codecov ](https://img.shields.io/codecov/c/github/ant-design-blazor/ant-design-blazor/master.svg?style=flat-square )](https://codecov.io/gh/ant-design-blazor/ant-design-blazor)
2020-05-29 00:33:49 +08:00
[![AntDesign ](https://img.shields.io/badge/License-MIT-blue?style=flat-square )](https://github.com/ant-design-blazor/ant-design-blazor/blob/master/LICENSE)
2022-04-22 20:00:48 +08:00
[![Ding Talk Group ](https://img.shields.io/badge/DingTalk-AntBlazor-blue.svg?style=flat-square&logo=data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBzdGFuZGFsb25lPSJubyI/Pg0KPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGNsYXNzPSJpY29uIiB2aWV3Qm94PSIwIDAgMTAyNCAxMDI0IiBmaWxsPSIjZmZmZmZmIj4NCiAgPHBhdGggZD0iTTU3My43IDI1Mi41QzQyMi41IDE5Ny40IDIwMS4zIDk2LjcgMjAxLjMgOTYuN2MtMTUuNy00LjEtMTcuOSAxMS4xLTE3LjkgMTEuMS01IDYxLjEgMzMuNiAxNjAuNSA1My42IDE4Mi44IDE5LjkgMjIuMyAzMTkuMSAxMTMuNyAzMTkuMSAxMTMuN1MzMjYgMzU3LjkgMjcwLjUgMzQxLjljLTU1LjYtMTYtMzcuOSAxNy44LTM3LjkgMTcuOCAxMS40IDYxLjcgNjQuOSAxMzEuOCAxMDcuMiAxMzguNCA0Mi4yIDYuNiAyMjAuMSA0IDIyMC4xIDRzLTM1LjUgNC4xLTkzLjIgMTEuOWMtNDIuNyA1LjgtOTcgMTIuNS0xMTEuMSAxNy44LTMzLjEgMTIuNSAyNCA2Mi42IDI0IDYyLjYgODQuNyA3Ni44IDEyOS43IDUwLjUgMTI5LjcgNTAuNSAzMy4zLTEwLjcgNjEuNC0xOC41IDg1LjItMjQuMkw1NjUgNzQzLjFoODQuNkw2MDMgOTI4bDIwNS4zLTI3MS45SDcwMC44bDIyLjMtMzguN2MuMy41LjQuOC40LjhTNzk5LjggNDk2LjEgODI5IDQzMy44bC42LTFoLS4xYzUtMTAuOCA4LjYtMTkuNyAxMC0yNS44IDE3LTcxLjMtMTE0LjUtOTkuNC0yNjUuOC0xNTQuNXoiLz4NCjwvc3ZnPg0K )](https://h5.dingtalk.com/circle/healthCheckin.html?corpId=dingf3df1949a4aa48627b0128d9a44ecb79& c5df5865-4f41-=be1b34c7-397b-& cbdbhh=qwertyuiop& origin=11)
2020-11-14 23:44:48 +08:00
[![Discord Server ](https://img.shields.io/discord/753358910341251182?color=%237289DA&label=AntBlazor&logo=discord&logoColor=white&style=flat-square )](https://discord.com/invite/jqu3Xeq)
2020-04-28 00:13:43 +08:00
2020-03-25 14:31:01 +08:00
< / div >
2020-06-20 01:03:06 +08:00
[![ ](https://gw.alipayobjects.com/mdn/rms_08e378/afts/img/A*Yl83RJhUE7kAAAAAAAAAAABkARQnAQ )](https://ant-design-blazor.github.io)
2020-03-28 18:28:30 +08:00
[English ](./README.md ) | 简体中文
2020-03-25 14:31:01 +08:00
## ✨ 特性
2020-04-24 10:34:54 +08:00
- 🌈 提炼自企业级中后台产品的交互语言和视觉风格。
- 📦 开箱即用的高质量 Blazor 组件,可在多种托管方式共享。
2022-11-22 23:57:53 +08:00
- 💕 支持基于 WebAssembly 的前端和基于 SignalR 的服务端 UI 即时交互。
2020-04-24 10:34:54 +08:00
- 🎨 支持渐进式 Web 应用( PWA)
- 🛡 使用 C# 构建,多范式静态语言带来高效的开发体验。
2022-11-22 23:57:53 +08:00
- ⚙️ 支持 .NET Core 3.1 以上所有版本,可直接引用丰富的 .NET 类库。
- 🌍 数十个国际化语言支持。
2022-05-29 17:44:27 +08:00
- 💴 基于 MIT 开源协议,.NET 基金会项目,商业应用免费。
2020-03-25 14:31:01 +08:00
## 🌈 在线示例
WebAssembly 静态托管页面示例
2023-11-30 12:34:26 +08:00
- [文档站点 ](https://antblazor.com/ )
- [企业级仪表板 ](https://pro.antblazor.com/ )
2020-03-25 14:31:01 +08:00
## 🖥 支持环境
2023-11-17 00:39:15 +08:00
- 支持 .NET Core 3.1 / .NET 5 / .NET 6 / .NET 7 / .NET 8。
2020-03-25 14:31:01 +08:00
- 支持 WebAssembly 静态文件部署。
2022-11-22 23:57:53 +08:00
- 支持主流 4 款现代浏览器,以及 Internet Explorer 11+(限 [Blazor Server ](https://docs.microsoft.com/en-us/aspnet/core/blazor/supported-platforms?view=aspnetcore-3.1&WT.mc_id=DT-MVP-5003987 ))。
- 支持 [.NET MAUI ](https://dotnet.microsoft.com/zh-cn/apps/maui?WT.mc_id=DT-MVP-5003987 )、[WPF](https://docs.microsoft.com/en-us/aspnet/core/blazor/hybrid/tutorials/wpf?view=aspnetcore-6.0& WT.mc_id=DT-MVP-5003987)、[Windows Forms](https://docs.microsoft.com/en-us/aspnet/core/blazor/hybrid/tutorials/windows-forms?view=aspnetcore-6.0) 等 Blazor 混合客户端环境中。
- 支持 [Electron ](http://electron.atom.io/ ) 等基于 Web 标准的环境上。
2020-03-25 14:31:01 +08:00
2021-02-23 15:30:46 +08:00
> 由于 [WebAssembly](https://webassembly.org) 的限制, Blazor WebAssembly 不支持 IE 浏览器,但 Blazor Server 支持 IE 11†。 详见[官网说明](https://docs.microsoft.com/en-us/aspnet/core/blazor/supported-platforms?view=aspnetcore-3.1&WT.mc_id=DT-MVP-5003987)。
2020-03-25 14:31:01 +08:00
2021-12-20 11:13:46 +08:00
> 从 .NET 5 开始, Blazor 不再官方支持 IE 11。详见 [Blazor: Updated browser support](https://docs.microsoft.com/en-us/dotnet/core/compatibility/aspnet-core/5.0/blazor-browser-support-updated)。社区项目 [Blazor.Polyfill](https://github.com/Daddoon/Blazor.Polyfill) 提供了非官方支持。
2020-03-25 14:31:01 +08:00
## 💿 当前版本
2020-07-01 10:24:37 +08:00
- 正式发布: [![AntDesign ](https://img.shields.io/nuget/v/AntDesign.svg?color=red&style=flat-square )](https://www.nuget.org/packages/AntDesign/)
2021-03-03 14:08:49 +08:00
- 每日构建: [![AntDesign ](https://img.shields.io/myget/ant-design-blazor/vpre/AntDesign?style=flat-square )](https://www.myget.org/feed/ant-design-blazor/package/nuget/AntDesign)
2023-06-18 19:43:40 +08:00
_[了解如何安装每日构建版本](docs/nightly-build.zh-CN.md)_
2020-03-25 14:31:01 +08:00
## 🎨 设计规范
2020-04-28 00:13:43 +08:00
与 Ant Design 设计规范定期同步,你可以在线查看[同步日志](https://github.com/ant-design-blazor/ant-design-blazor/actions?query=workflow%3A%22Style+sync+Bot%22)。
2020-03-25 14:31:01 +08:00
2021-01-11 13:22:35 +08:00
因此,你可以直接使用在 Ant Design 中的自定义主题样式。
2023-06-18 19:43:40 +08:00
**在 1.0 版本发布之前,我们将只同步 antd 4.x 的样式。**
2020-03-25 14:31:01 +08:00
## 📦 安装
2023-11-30 12:34:26 +08:00
### 先决条件
2020-03-25 14:31:01 +08:00
2023-11-30 12:34:26 +08:00
- 先安装 [.NET Core SDK ](https://dotnet.microsoft.com/download/dotnet-core/3.1?WT.mc_id=DT-MVP-5003987 ) 3.1 以上版本,推荐 .NET 8。
### 选择一:从模板创建一个新项目 [![Pro 模板](https://img.shields.io/nuget/v/AntDesign.Templates?color=%23512bd4&label=Pro%20模板&style=flat-square)](https://github.com/ant-design-blazor/ant-design-pro-blazor)
2020-08-25 12:42:02 +08:00
我们提供了 `dotnet new` 模板来创建一个开箱即用的 [Ant Design Pro ](https://github.com/ant-design-blazor/ant-design-pro-blazor ) 新项目:
2021-09-15 23:34:02 +08:00
![Pro Template ](https://user-images.githubusercontent.com/8186664/44953195-581e3d80-aec4-11e8-8dcb-54b9db38ec11.png )
2020-08-25 12:42:02 +08:00
- 安装模板
```bash
2020-11-14 23:44:48 +08:00
$ dotnet new --install AntDesign.Templates
2020-08-25 12:42:02 +08:00
```
- 从模板创建 Ant Design Blazor Pro 项目
2020-03-25 14:31:01 +08:00
```bash
2020-08-25 12:42:02 +08:00
$ dotnet new antdesign -o MyAntDesignApp
2020-03-25 14:31:01 +08:00
```
2020-08-25 12:42:02 +08:00
模板的参数:
2021-03-23 17:38:41 +08:00
| 参数 | 说明 | 类型 | 默认值 |
| ----------------- | ------------------------------------------------ | ------------------------------ | ------ |
2024-06-24 01:10:55 +08:00
| `-f` \| `--full` | 如果设置这个参数,会生成所有 Ant Design Pro 页面 | bool | false |
| `-ho` \| `--host` | 指定托管模型 | 'webapp' \| 'wasm' \| 'server' | 'webapp' |
| `--styles` | 指定样式构建类型 | `css` \| `less` | `css` |
| `--no-restore` | 如果设置这个参数,就不会自动恢复包引用 | bool | false |
2020-08-25 12:42:02 +08:00
2023-11-30 12:34:26 +08:00
### 选择二:在已有项目中引入 Ant Design Blazor
2020-08-25 12:42:02 +08:00
2020-03-25 14:31:01 +08:00
- 进入应用的项目文件夹,安装 Nuget 包引用
```bash
2023-11-30 12:34:26 +08:00
$ dotnet add package AntDesign
```
- 在项目的 `Program.cs` 中注册相关服务:
```csharp
builder.Services.AddAntDesign();
2020-03-25 14:31:01 +08:00
```
2023-11-30 12:34:26 +08:00
或者在 `Startup.cs` 中:
2020-03-25 14:31:01 +08:00
```csharp
2020-05-29 00:33:49 +08:00
services.AddAntDesign();
2020-03-25 14:31:01 +08:00
```
- 在 `_Imports.razor` 中加入命名空间
```csharp
2020-05-29 00:33:49 +08:00
@using AntDesign
2020-03-25 14:31:01 +08:00
```
2024-06-24 01:10:55 +08:00
- 适当的位置引入 CSS 和 JS 文件。WebApp 项目在App.razor 中引入, WebAssembly 项目在 index.html 中引入
2024-09-03 13:29:19 +08:00
```html
< link href = "_content/AntDesign/css/ant-design-blazor.css" rel = "stylesheet" >
< src = " _content / AntDesign / js / ant-design-blazor . js " > < / script >
```
2024-06-24 01:10:55 +08:00
2020-06-20 01:03:06 +08:00
- 为了动态地显示弹出组件,需要在 `App.razor` 中添加一个 `<AntContainer />` 组件。
2023-11-30 12:34:26 +08:00
- 对于 Blazor WebApp 项目,还需要为 `Routes` 指定渲染模式来支持交互性。
```diff
< Routes @rendermode =" RenderMode . InteractiveAuto " /> < -- 指定渲染模式 ✨
+ < AntContainer @rendermode =" RenderMode . InteractiveAuto " /> < -- 在这里添加容器 ✨
```
- 对于旧版本的项目,则只需加一行代码:
2023-01-09 00:33:25 +08:00
```diff
2020-06-20 01:03:06 +08:00
< Router AppAssembly = "@typeof(MainLayout).Assembly" >
< Found Context = "routeData" >
< RouteView RouteData = "routeData" DefaultLayout = "@typeof(MainLayout)" / >
< / Found >
< NotFound >
< LayoutView Layout = "@typeof(MainLayout)" >
< Result Status = "404" / >
< / LayoutView >
< / NotFound >
< / Router >
2023-11-30 12:34:26 +08:00
+ < AntContainer / > < -- 在这里添加容器 ✨
2020-06-20 01:03:06 +08:00
```
2020-03-25 14:31:01 +08:00
- 最后就可以在`.razor`组件中引用啦!
2021-03-23 17:38:41 +08:00
```razor
< Button Type = "primary" > Hello World!< / Button >
2020-03-25 14:31:01 +08:00
```
2022-11-22 23:57:53 +08:00
## 🔨 开发
2022-08-31 14:01:54 +08:00
### Gitpod
点击下方按钮,免费创建一个新的工作区用于开发。
[![Open in Gitpod ](https://gitpod.io/button/open-in-gitpod.svg )](https://gitpod.io/#https://github.com/ant-design-blazor/ant-design-blazor)
### 本地
2020-03-25 14:31:01 +08:00
2023-11-17 00:39:15 +08:00
- 先安装 [.NET Core SDK ](https://dotnet.microsoft.com/download/dotnet/8.0?WT.mc_id=DT-MVP-5003987 ) 8.0.100 以上版本
2020-03-25 14:31:01 +08:00
- 安装 Node.js( 只用于样式文件和互操作所需 TS 文件的构建)
- 克隆到本地开发
```bash
2020-04-28 00:13:43 +08:00
$ git clone git@github.com:ant-design-blazor/ant-design-blazor.git
2020-03-25 14:31:01 +08:00
$ cd ant-design-blazor
$ npm install
2021-09-01 23:51:38 +08:00
$ dotnet build ./site/AntDesign.Docs.Build/AntDesign.Docs.Build.csproj
2020-03-25 14:31:01 +08:00
$ npm start
```
2020-04-28 00:13:43 +08:00
- 打开浏览器访问 https://localhost:5001 ,详情参考[本地开发文档](https://github.com/ant-design-blazor/ant-design-blazor/wiki)。
2022-05-03 12:34:15 +08:00
> 推荐使用 Visual Studio 2022 开发。
2020-03-25 14:31:01 +08:00
## 🔗 链接
2023-06-18 19:43:40 +08:00
- [文档主页 ](https://antblazor.com )
2022-05-29 17:44:27 +08:00
- [Ant Design Blazor 商业应用调查 ](https://wj.qq.com/s2/10306537/c332/ )
2020-11-03 00:49:13 +08:00
- [Blazor 官方文档 ](https://docs.microsoft.com/zh-cn/aspnet/core/blazor/?WT.mc_id=DT-MVP-5003987 )
- [MS Learn 平台 Blazor 教程 ](https://docs.microsoft.com/zh-cn/learn/modules/build-blazor-webassembly-visual-studio-code/?WT.mc_id=DT-MVP-5003987 )
2020-03-25 14:31:01 +08:00
## 🗺 开发路线
2023-06-18 19:43:40 +08:00
查看[这个 issue](https://github.com/ant-design-blazor/ant-design-blazor/issues/21) 来了解我们在 1.0 版本的开发计划。
另外也可以关注这个 [issue ](https://github.com/ant-design-blazor/ant-design-blazor/issues/2870 ) 了解我们关于将来对 antd 5.0 适配的讨论和最新进展。
2020-03-25 14:31:01 +08:00
## 🤝 如何贡献
2020-04-28 00:13:43 +08:00
[![PRs Welcome ](https://img.shields.io/badge/PRs-welcome-brightgreen.svg?style=flat-square )](https://github.com/ant-design-blazor/ant-design-blazor/pulls)
2020-03-25 14:31:01 +08:00
2020-04-28 00:13:43 +08:00
如果你希望参与贡献,欢迎 [Pull Request ](https://github.com/ant-design-blazor/ant-design-blazor/pulls ),或给我们 [报告 Bug ](https://github.com/ant-design-blazor/ant-design-blazor/issues/new ) 。
2020-03-25 14:31:01 +08:00
2020-04-03 15:44:31 +08:00
## 💕 支持本项目
本项目以 MIT 协议开源,为了能得到够更好的且可持续的发展,我们期望获得更多的支持者,我们将把所得款项用于社区活动和推广。你可以通过如下任何一种方式支持我们:
- [OpenCollective ](https://opencollective.com/ant-design-blazor )
2021-02-23 15:30:46 +08:00
- [微信 ](https://jamesyeung.cn/qrcode/wepay.jpg )
- [支付宝 ](https://jamesyeung.cn/qrcode/alipay.jpg )
2020-04-28 00:13:43 +08:00
我们会把详细的捐赠记录登记在 [捐赠者名单 ](https://github.com/ant-design-blazor/ant-design-blazor/issues/62 )。
2020-04-03 15:44:31 +08:00
2020-03-25 14:31:01 +08:00
## ❓ 社区互助
如果您在使用的过程中碰到问题,可以通过以下途径寻求帮助,同时我们也鼓励资深用户通过下面的途径给新人提供帮助。
2021-03-23 17:38:41 +08:00
- [![Discord Server ](https://img.shields.io/discord/753358910341251182?color=%237289DA&label=AntBlazor&logo=discord&logoColor=white&style=flat-square )](https://discord.com/invite/jqu3Xeq) (英文)
2023-11-17 00:39:15 +08:00
- [![钉钉群 ](https://img.shields.io/badge/钉钉-AntBlazor-blue.svg?style=flat-square&logo=data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBzdGFuZGFsb25lPSJubyI/Pg0KPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGNsYXNzPSJpY29uIiB2aWV3Qm94PSIwIDAgMTAyNCAxMDI0IiBmaWxsPSIjZmZmZmZmIj4NCiAgPHBhdGggZD0iTTU3My43IDI1Mi41QzQyMi41IDE5Ny40IDIwMS4zIDk2LjcgMjAxLjMgOTYuN2MtMTUuNy00LjEtMTcuOSAxMS4xLTE3LjkgMTEuMS01IDYxLjEgMzMuNiAxNjAuNSA1My42IDE4Mi44IDE5LjkgMjIuMyAzMTkuMSAxMTMuNyAzMTkuMSAxMTMuN1MzMjYgMzU3LjkgMjcwLjUgMzQxLjljLTU1LjYtMTYtMzcuOSAxNy44LTM3LjkgMTcuOCAxMS40IDYxLjcgNjQuOSAxMzEuOCAxMDcuMiAxMzguNCA0Mi4yIDYuNiAyMjAuMSA0IDIyMC4xIDRzLTM1LjUgNC4xLTkzLjIgMTEuOWMtNDIuNyA1LjgtOTcgMTIuNS0xMTEuMSAxNy44LTMzLjEgMTIuNSAyNCA2Mi42IDI0IDYyLjYgODQuNyA3Ni44IDEyOS43IDUwLjUgMTI5LjcgNTAuNSAzMy4zLTEwLjcgNjEuNC0xOC41IDg1LjItMjQuMkw1NjUgNzQzLjFoODQuNkw2MDMgOTI4bDIwNS4zLTI3MS45SDcwMC44bDIyLjMtMzguN2MuMy41LjQuOC40LjhTNzk5LjggNDk2LjEgODI5IDQzMy44bC42LTFoLS4xYzUtMTAuOCA4LjYtMTkuNyAxMC0yNS44IDE3LTcxLjMtMTE0LjUtOTkuNC0yNjUuOC0xNTQuNXoiLz4NCjwvc3ZnPg0K )](https://h5.dingtalk.com/circle/joinCircle.html?corpId=ding82cf43d1ccc223faffe93478753d9884& token=872d544429893379155dfd32580ca02a& groupCode=v1,k1,OgitB0lpZuBX9trsVcblH+V+oKhafALwKQ6AmgviopA=& from=group& ext=%7B%22channel%22%3A%22QR_GROUP_NORMAL%22%2C%22extension%22%3A%7B%22groupCode%22%3A%22v1%2Ck1%2COgitB0lpZuBX9trsVcblH%2BV%2BoKhafALwKQ6AmgviopA%3D%22%2C%22groupFrom%22%3A%22group%22%7D%2C%22inviteId%22%3A137894871%2C%22orgId%22%3A163097163%2C%22shareType%22%3A%22GROUP%22%7D& origin=11) (中文)
2020-03-25 14:31:01 +08:00
2022-05-29 17:44:27 +08:00
< img src = "/docs/assets/dingtalk.jpg" width = "200" >
2021-03-23 17:38:41 +08:00
2022-02-25 17:17:41 +08:00
- 另外,我还创立了面向中文开发者的 Blazor 中文社区, 高手如云, 只讨论技术, 无卖课广告。可以加我微信( JamesYeungMVP) 拉进微信群, 另外也有一个 QQ 群 1012762441。广告勿扰。
2023-01-09 00:33:25 +08:00
## 贡献者
感谢所有为本项目做出过贡献的朋友。
< a href = "https://github.com/ant-design-blazor/ant-design-blazor/graphs/contributors" >
< img src = "https://contrib.rocks/image?repo=ant-design-blazor/ant-design-blazor&max=1000&columns=15&anon=1" / >
< / a >
2021-03-23 17:38:41 +08:00
## 行为准则
本项目采用了《贡献者公约》所定义的行为准则,以明确我们社区的预期行为。
更多信息请见 [.NET Foundation Code of Conduct ](https://dotnetfoundation.org/code-of-conduct ).
2020-03-25 14:31:01 +08:00
## ☀️ 授权协议
2020-05-29 00:33:49 +08:00
[![AntDesign ](https://img.shields.io/badge/License-MIT-blue?style=flat-square )](https://github.com/ant-design-blazor/ant-design-blazor/blob/master/LICENSE)
2021-03-23 17:38:41 +08:00
## .NET Foundation
本项目由 [.NET Foundation ](https://dotnetfoundation.org ) 支持。