Ant Design Mobile:高性能、可定制、原子化的移动端组件库

Ant Design Mobile:高性能、可定制、原子化的移动端组件库Ant Design Mobile 是由支付宝设计团队基于蚂蚁集团的众多业务实践,亿万用户的验证反馈,抽象构建出的移动端资产库。

特性

  • 「高性能」:无需配置,即可拥有最佳的包体积大小和极致的性能

  • 「可定制」:可以高效地对组件外观进行调整或创造自己的主题

  • 「原子化」:每个组件的功能不多也不少,恰好就是你所需

  • 「流畅感」:拥有流畅的手势和细腻的动画,助力产品打造出极致体验

组件示例

import React from 'react'
import { Button, Space } from 'antd-mobile'
import { DemoBlock } from 'demos'

export default () => {
  return (
    <>
      <DemoBlock title='填充模式'>
        <Space wrap>
          <Button color='primary' fill='solid'>
            Solid
          </Button>
          <Button color='primary' fill='outline'>
            Outline
          </Button>
          <Button color='primary' fill='none'>
            None
          </Button>
        </Space>
      </DemoBlock>

      <DemoBlock title='块级按钮'>
        <Button block color='primary' size='large'>
          Block Button
        </Button>
      </DemoBlock>

      <DemoBlock title='按钮尺寸'>
        <Space wrap align='center'>
          <Button size='mini' color='primary'>
            Mini
          </Button>
          <Button size='small' color='primary'>
            Small
          </Button>
          <Button size='middle' color='primary'>
            Middle
          </Button>
          <Button size='large' color='primary'>
            Large
          </Button>
        </Space>
      </DemoBlock>

      <DemoBlock title='语义按钮'>
        <Space wrap>
          <Button
            onClick={() => {
              alert('hello.')
            }}
          >
            Default
          </Button>
          <Button color='primary'>Primary</Button>
          <Button color='success'>Success</Button>
          <Button color='danger'>Danger</Button>
          <Button color='warning'>Warning</Button>
        </Space>
      </DemoBlock>
    </>
  )
}

Ant Design Mobile:高性能、可定制、原子化的移动端组件库

import React from 'react'
import { List, Switch } from 'antd-mobile'
import {
  UnorderedListOutline,
  PayCircleOutline,
  SetOutline,
} from 'antd-mobile-icons'

export default () => {
  return (
    <>
      <List header='基础用法'>
        <List.Item>1</List.Item>
        <List.Item>2</List.Item>
        <List.Item>3</List.Item>
      </List>

      <List header='可点击列表'>
        <List.Item prefix={<UnorderedListOutline />} onClick={() => {}}>
          账单
        </List.Item>
        <List.Item prefix={<PayCircleOutline />} onClick={() => {}}>
          总资产
        </List.Item>
        <List.Item prefix={<SetOutline />} onClick={() => {}}>
          设置
        </List.Item>
      </List>

      <List header='复杂列表'>
        <List.Item extra={<Switch defaultChecked />}>新消息通知</List.Item>
        <List.Item extra='未开启' clickable>
          大字号模式
        </List.Item>
        <List.Item description='管理已授权的产品和设备' clickable>
          授权管理
        </List.Item>
        <List.Item title='副标题信息A' description='副标题信息B' clickable>
          这里是主信息
        </List.Item>
      </List>

      <List header='禁用状态'>
        <List.Item disabled clickable prefix={<UnorderedListOutline />}>
          账单
        </List.Item>
        <List.Item disabled prefix={<PayCircleOutline />}>
          总资产
        </List.Item>
      </List>
    </>
  )
}

Ant Design Mobile:高性能、可定制、原子化的移动端组件库

快速上手

安装

$ npm install --save antd-mobile
# or
$ yarn add antd-mobile
# or
$ pnpm add antd-mobile

引入

直接引入组件即可,antd-mobile 会自动为你加载 css 样式文件:

import { Button } from 'antd-mobile'

兼容性

建议在项目中增加下面的 babel 配置,这样可以达到最大兼容性,为 iOS Safari >= 10 和 Chrome >= 49

{
  "presets": [
    [
      "@babel/preset-env",
      {
        "targets": {
          "chrome""49",
          "ios""10"
        }
      }
    ]
  ]
}

不要把 node_modules 排除在 babel 编译之外,不然上面的配置不会有效果

对于 TypeScript,兼容的版本是 >= 3.8

对于 React,兼容的版本是 ^16.8.0 ^17.0.0 `^18.0.0。

由于 iOS 9 并不支持 CSS 变量,因此如果你需要支持 iOS 9,请参考 「CSS 变量自动降级」 启用 CSS 变量自动降级,并且将 babel 配置中的 target ios 设置为 9。

CSS 变量自动降级:
https://mobile.ant.design/zh/guide/css-variables/#css-%E5%8F%98%E9%87%8F%E8%87%AA%E5%8A%A8%E9%99%8D%E7%BA%A7

传送门

开源协议:MIT

开源地址:https://github.com/ant-design/ant-design-mobile

-END-


原文始发于微信公众号(开源技术专栏):Ant Design Mobile:高性能、可定制、原子化的移动端组件库

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/166561.html

(0)
小半的头像小半

相关推荐

发表回复

登录后才能评论
极客之音——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!