npm 包 ui-aliens 使用教程

在现代前端开发中,UI 组件库遍地开花,其中一个备受欢迎的组件库就是 ui-aliens,它是阿里前端团队开发的一个基于 React 的 UI 组件库,提供了大量的高质量的 UI 组件,并支持主题定制。

本文将为大家详细介绍如何使用 ui-aliens 包,并提供一些示例代码,帮助您更好地使用这个强大的工具。

安装

使用 ui-aliens 前,需要先安装它。可以使用 npm 或 yarn 安装,命令如下:

npm install ui-aliens --save

或者

yarn add ui-aliens

使用

安装完成后,就可以在项目中引用 ui-aliens 的组件了。以引用 Button 组件为例,代码如下:

import React from 'react';
import ReactDOM from 'react-dom';
import { Button } from 'ui-aliens';

class App extends React.Component {
  render() {
    return <Button type="primary">Hello World!</Button>;
  }
}

ReactDOM.render(<App />, document.getElementById('root'));

配置主题

ui-aliens 支持主题定制,可以根据需要修改颜色、字体等各种样式。主题设置默认是使用 Less 变量实现的,所以需要在项目中添加 less-loader,并在 webpack 配置中添加对应的 loader 配置。

下面是一份示例代码:

// webpack.config.js

const path = require('path');

module.exports = {
  entry: './src/index.js',
  output: {
    path: path.resolve(__dirname, 'dist'),
    filename: 'bundle.js',
  },
  module: {
    rules: [
      {
        test: /\.less$/,
        use: [
          'style-loader',
          {
            loader: 'css-loader',
            options: {
              importLoaders: 1,
            },
          },
          'less-loader',
        ],
      },
    ],
  },
};
// index.less

@color: #ff5555;

@import '~ui-aliens/lib/theme.less';

// Override variables
@link-color: @color;
@border-radius-base: 5px;

// Import ui-aliens styles
@import '~ui-aliens/lib/index.less';

主题变量

ui-aliens 为开发者提供了大量的主题变量,方便根据业务需要定制主题。可以在项目中新建一个类似于上面文中定义的 index.less 文件,在该文件中修改对应的变量即可自定义主题。

下面列出了 ui-aliens 的主题变量以及默认值,方便开发者根据需求进行调整:

// Colors
@primary-color: #1890ff;
@success-color: #52c41a;
@warning-color: #faad14;
@error-color: #f5222d;
@info-color: #1890ff;
@highlight-color: red;
@disabled-color: #c2c2c2;
@white: #fff;
@black: #000;

// Font
@font-size-base: 14px;
@line-height-base: 1.5;
@font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif,
  "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";

// Border
@border-radius-base: 4px;
@border-color-base: #d9d9d9;
@box-shadow-base: 0 2px 8px rgba(0, 0, 0, 0.15);

示例

下面我们来看几个 ui-aliens 的组件示例,更好地了解如何使用这个优秀的 UI 组件库。

Button

import React from 'react';
import { Button } from 'ui-aliens';

class App extends React.Component {
  render() {
    return (
      <div>
        <Button type="primary">Primary</Button>
        <Button type="default">Default</Button>
        <Button type="danger">Danger</Button>
        <Button type="link">Link</Button>
      </div>
    );
  }
}

Icon

import React from 'react';
import { Icon } from 'ui-aliens';

class App extends React.Component {
  render() {
    return (
      <div>
        <Icon type="smile" />
        <Icon type="heart" />
        <Icon type="android" />
        <Icon type="loading" />
      </div>
    );
  }
}

Input

import React from 'react';
import { Input } from 'ui-aliens';

class App extends React.Component {
  state = {
    value: '',
  };

  handleChange = e => {
    this.setState({ value: e.target.value });
  };

  render() {
    return (
      <Input
        type="text"
        value={this.state.value}
        placeholder="Enter something"
        onChange={this.handleChange}
      />
    );
  }
}

总结

通过本文的介绍,相信大家已经了解了如何安装和使用 ui-aliens 这个优秀的 UI 组件库,并了解了如何进行主题定制,以及一些常用组件的使用示例。希望这篇文章能够为您的前端开发工作带来一些帮助。

来源:JavaScript中文网 ,转载请注明来源 本文地址:https://www.javascriptcn.com/post/60067382890c4f7277584316


纠错
反馈