smart-background 自动生成符号背景的 react 组件,让你不再为背景头疼

2021-08-28 18:47:11 +08:00
 favori

Smart Background

在开发过程中,我们经常会遇到使用背景的地方,比如登录页面,用户信息页面,封面图……

寻找契合业务主题的背景十分耗费精力,总觉得做的背景不合适,

如果直接用图片呢,逻辑是比较简单,但寻找到一张契合业务主题的图片也不是那么容易,

所以想到用符号生成幕布一样的背景,从这个出发点做了这个组件,

滚动的图片墙可能这个需求比较常见,用 SmartBackground 可以很快速的实现,

希望可以帮到您,别忘了 star 哟

An React Component Can Automatically Generate The Background

一个快速生成元素背景的 react 组件

Live demo / Home page

https://yuanguandong.github.io/smart-background/

Install

npm i smart-background -S

How to use

import React from 'react';
import Background from 'smart-background';
import { FaLaugh } from 'react-icons/fa';

export default () => {
  return (
    <div style={styles.container}>
      <Background underlayColor="#f00" animation={{ type: 'bottom', speed: 5 }}>
        <div style={styles.content}>
          <FaLaugh style={styles.icon} />
          <h1 style={styles.text}>JUST DO IT</h1>
        </div>
      </Background>
    </div>
  );
};

const styles = {
  container: { width: '100%', position: 'relative', height: 350 },
  content: {
    width: '100%',
    height: '100%',
    display: 'flex',
    justifyContent: 'center',
    alignItems: 'center',
    flexDirection: 'column',
  },
  icon: { color: '#fff', fontSize: 120 },
  text: { color: '#fff', fontSize: 36, fontWeight: 'bold' },
};

Props

property description type defaultValue required
symbols 元素 /字符 /符号集合 (string | ReactNode | Element)[ ] ['●'] false
random 符号是否随机生成位置和大小 { fontSizeRange: number[] } | undefined false
underlayColor 底衬颜色 string false
underlayImage 底衬图片 string false
symbolsStyle 符号样式 Object {color: '#000', opacity: '0.3'} false
rotate 符号旋转角度 number 0 false
symbolSize 符号大小 number 90 false
gap 符号间距 number 10 false
animation 滚动动画 {type: 'left' | 'right' | 'top' | 'bottom'; speed: number;} false
exact 精确模式 boolean false false
1239 次点击
所在节点    React
9 条回复
xiaoming1992
2021-08-28 23:03:50 +08:00
挺有意思的,demo 页可以留个 github 地址
xarthur
2021-08-29 11:16:19 +08:00
这个看上去不错。
seakingii
2021-08-29 12:55:39 +08:00
有意思.可惜 不是 vue 用的
favori
2021-08-29 16:34:36 +08:00
@xiaoming1992 感谢关注! demo 页右上角有个 github 的标,可以跳转到 github 仓库
favori
2021-08-29 16:34:46 +08:00
@xarthur 谢谢!
favori
2021-08-29 16:36:34 +08:00
@seakingii 感谢关注,后面如果有机会再来个 vue 版本的
favori
2021-08-29 16:37:59 +08:00
tousfun
2021-08-30 00:59:34 +08:00
好玩
favori
2021-08-30 07:23:59 +08:00
@919615766 感谢!点个 star 吧☺️

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/798533

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX