Ant Design JS,一款值得推荐的前端UI框架吗?

ant design 是一个基于 react 的前端 UI 框架,提供了丰富的组件和工具,帮助开发者快速构建高质量的 Web 应用。

Ant Design JS:全面指南与最佳实践

Ant Design JS,一款值得推荐的前端UI框架吗?

Ant Design(antd)是一个由蚂蚁集团开发的企业级 UI 设计语言和 React 组件库,它提供了丰富的高质量组件和主题定制能力,本文将详细介绍如何在原生 JavaScript 项目中使用 Ant Design,并探讨其 CSS-in-JS 实现及最佳实践。

一、引入 Ant Design

在原生 JS 项目中使用 Ant Design,需要通过 CDN 引入必要的 CSS 和 JS 文件,以下是具体的步骤:

1、引入 CSS:在 HTML 文件中引入 Ant Design 的 CSS 文件。

   <!DOCTYPE html>
   <html lang="en">
   <head>
       <meta name="viewport" content="width=device-width, initial-scale=1.0">
       <title>Ant Design with Vanilla JS</title>
       <!-引入Ant Design CSS -->
       <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/antd/4.16.13/antd.min.css">
   </head>
   <body>
       <div id="root"></div>
       <!-引入React和ReactDOM -->
       <script src="https://cdnjs.cloudflare.com/ajax/libs/react/17.0.2/umd/react.production.min.js"></script>
       <script src="https://cdnjs.cloudflare.com/ajax/libs/react-dom/17.0.2/umd/react-dom.production.min.js"></script>
       <!-引入Ant Design JS -->
       <script src="https://cdnjs.cloudflare.com/ajax/libs/antd/4.16.13/antd.min.js"></script>
       <!-你的JavaScript代码 -->
       <script src="index.js"></script>
   </body>
   </html>

2、初始化组件:在原生 JS 项目中使用 Ant Design 组件,需要使用 React 和 ReactDOM 来渲染这些组件,你可以在 JavaScript 文件中编写 React 代码,并使用 ReactDOM 将其挂载到 HTML 中的某个 DOM 节点上。

   // index.js
   const { Button } = antd; // 解构出需要的组件
   const { useState } = React; // 使用 React 的 hooks
   function App() {
       const [count, setCount] = useState(0);
       return (
           <div>
               <Button type="primary" onClick={() => setCount(count + 1)}>
                   Click me! Count: {count}
               </Button>
           </div>
       );
   }
   ReactDOM.render(<App />, document.getElementById('root'));

二、配置和自定义主题

Ant Design 提供了丰富的主题配置选项,你可以通过配置来定制组件的样式,以下是如何自定义主题的详细步骤:

1、引入 Less:需要引入 Less 编译器来支持自定义主题。

   <!-引入Less -->
   <script src="https://cdnjs.cloudflare.com/ajax/libs/less.js/3.13.1/less.min.js"></script>

2、创建自定义主题:创建一个 Less 文件来定义自定义主题变量。

   /* custom-theme.less */
   @import "https://cdnjs.cloudflare.com/ajax/libs/antd/4.16.13/antd.less";
   @primary-color: #1DA57A;

3、编译 Less:使用 Less 编译器编译自定义主题。

   <script>
       less.modifyVars({ '@primary-color': '#1DA57A' });
   </script>

三、CSS-in-JS 实现与最佳实践

CSS-in-JS 是一种将 CSS 代码直接嵌入到 JavaScript 代码中的前端开发技术,它可以解决传统 CSS 的一些局限性,Ant Design 在 v5 中使用了 CSS-in-JS 技术以提供动态与混合主题的能力,以下是关于 CSS-in-JS 的优缺点及最佳实践:

1. CSS-in-JS 的优点:

动态功能:通过 JavaScript 的动态性,可以在 CSS 中实现更多的动态效果,例如基于状态、条件、数据等动态调整样式。

作用域:没有全局样式冲突,CSS-in-JS 可以轻松地创建局部作用域,避免了全局作用域下样式的命名冲突和污染问题。

可移植性:将 CSS 代码直接嵌入到 JavaScript 中,使得组件的样式与组件本身紧密关联,方便组件的移植和复用。

Ant Design JS,一款值得推荐的前端UI框架吗?

代码维护:CSS-in-JS 可以使样式与组件逻辑紧密结合,降低了样式与组件之间的耦合度,提高了代码的可维护性和可读性。

自动前缀和优化:一些 CSS-in-JS 库可以自动处理浏览器前缀和样式优化,减少了开发者在这方面的工作量。

2. CSS-in-JS 的缺点:

运行时开销css-in-js 增加了运行时开销,组件每次渲染时,css-in-js 库必须将样式“序列化”为可被插入到页面的 CSS 样式,显然这需要额外的 CPU 消耗,尤其是在 React 18 的并发模式下,会存在无法解决的性能问题,这个问题目前看来是无解的,因为运行时 css-in-js 库的工作方式就是组件渲染时插入新样式规则,这在根本上和性能是对立的。

包体积增加:相比于原生 CSS 写法或者 CSS module方案来说,css-in-js 会引入而外的运行时代码(Emotion 是7.9 kB压缩后,styled-components是12.7 kB)。

多个版本兼容问题:多个不同(甚至是相同)版本的 css-in-js 库同时加载时可能导致错误(example issue)。

SSR 适配问题:不同 React 版本的 SSR,css-in-js 需要适配不同的实现(example issue)。

3. CSS-in-JS 的最佳实践:

按需加载:Ant Design 默认支持基于 ES modules 的 tree shaking,可以根据需求加载相应的组件和样式。

避免全局污染:使用 CSS-in-JS 可以避免全局样式污染,确保样式只作用于当前组件。

结合工具使用:可以使用一些工具如 styled-components、Emotion等来更好地管理 CSS-in-JS。

四、常见问题解答

Q1:如何在原生JS项目中使用Ant Design组件?

A1:在原生JS项目中使用Ant Design组件,需要通过CDN引入必要的CSS和JS文件,然后在JavaScript文件中编写React代码并使用ReactDOM将其挂载到HTML中的某个DOM节点上,具体步骤如下:

Ant Design JS,一款值得推荐的前端UI框架吗?

1、在HTML文件中引入Ant Design的CSS和JS文件。

2、在JavaScript文件中编写React代码,并使用ReactDOM将其挂载到HTML中的某个DOM节点上。

3、根据需要引入和使用Ant Design的其他组件。

Q2:如何自定义Ant Design的主题?

A2:要自定义Ant Design的主题,可以按照以下步骤进行:

1、引入Less编译器来支持自定义主题。

2、创建一个Less文件来定义自定义主题变量。

3、使用Less编译器编译自定义主题。

4、在应用程序中应用自定义主题。

五、小编有话说

Ant Design作为一个优秀的React UI组件库,不仅提供了丰富的高质量组件,还支持高度的主题定制和动态功能,通过合理的配置和使用,我们可以在原生JS项目中充分发挥Ant Design的优势,打造出美观且功能强大的Web应用,希望本文能帮助大家更好地理解和使用Ant Design,如果有更多问题或建议,欢迎随时交流讨论。

以上内容就是解答有关“ant design js”的详细内容了,我相信这篇文章可以为您解决一些疑惑,有任何问题欢迎留言反馈,谢谢阅读。

原创文章,作者:K-seo,如若转载,请注明出处:https://www.kdun.cn/ask/785384.html

Like (0)
Donate 微信扫一扫 微信扫一扫
K-seoK-seo
Previous 2025-01-13 21:33
Next 2025-01-13 21:53

相关推荐

  • css如何导入html

    在网页开发中,CSS(层叠样式表)是一种用于描述HTML元素在屏幕上如何显示的语言,通过将CSS导入到HTML文件中,可以更好地控制网页的布局和样式,本文将详细介绍如何将CSS导入到HTML文件,并打开它。1. 什么是CSS?CSS(层叠样式表)是一种用于描述HTML元素在屏幕上如何显示的语言,它可以控制文本颜色、字体、大小、行高、背……

    2024-03-01
    0167
  • dz自定义html「dz自定义图片路径」

    哈喽!相信很多朋友都对dz自定义html不太了解吧,所以小编今天就进行详细解释,还有几点拓展内容,希望能给你一定的启发,让我们现在开始吧!Discuz网址后缀怎么改成html打开电脑,在桌面新建一个文本文档,但是一般电脑是不显示扩展名的。打开TXT文件,点击左上角“文件”。下拉选择“另存为”。回到电脑桌面,右击新建的文本文档,选择重命名,即可把txt格式改成html,如图所示。

    2023-11-29
    0163
  • html怎么连接css「html怎么连接css外部连接」

    内联样式表(Inline Styles) 内联样式是将CSS样式直接写在HTML元素内部的方式。通过在HTML元素的style属性中添加CSS样式规则,可以直接改变该元素的属性。 <p style="color: red; font-size: 18px;"&...

    2023-12-15
    0108
  • html引入公共部分

    在网页开发中,我们经常会遇到一些公共的部分,比如页眉、页脚、导航栏等,这些部分在整个网站的多个页面中都会重复出现,如果每个页面都单独编写一遍,不仅效率低下,而且容易出错,为了解决这个问题,HTML提供了一些特殊标签和属性,可以帮助我们实现公共部分的复用。1、使用模板标签HTML5引入了一个名为&lt;template&……

    2024-03-23
    0174
  • html怎么设置特殊字体的大小

    在HTML中设置特殊字体,通常有两种方式:一种是使用CSS样式,另一种是使用特定的HTML标签,下面将详细介绍这两种方法。使用CSS样式设置特殊字体CSS(层叠样式表)是一种用于描述HTML或XML(包括各种XML方言,如SVG、MathML或XHTML)文档呈现的样式的语言,通过CSS,我们可以设置网页的字体、颜色、大小等样式。1、……

    2024-03-17
    0177
  • hb html怎么连接css

    在HTML中,我们可以通过多种方式来链接CSS,这主要取决于你的需求和你的项目的复杂性,下面我将详细介绍几种常见的方法。1. 直接链接到外部CSS文件这是最常见的链接样式表的方法,你可以在HTML文件的&lt;head&gt;部分使用&lt;link&gt;标签来链接一个外部的CSS文件。&lt……

    2024-01-02
    0139

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

免备案 高防CDN 无视CC/DDOS攻击 限时秒杀,10元即可体验  (专业解决各类攻击)>>点击进入