UNPKG

nuke-icon

Version:

图标

97 lines (87 loc) 2.36 kB
# Icon Demos - order: 1 通过注入主题尺寸,修改 Icon 的尺寸 --- ```js <NukePlayGround> <StyleProvider style={smallerIcons}> <MultiRow dataSource={ICONS['v2']} rows={3} renderRow={this.renderGridCellV2} /> </StyleProvider> <NukePlayGround> ``` --- ````js /** @jsx createElement */ import {createElement, Component,render } from 'rax'; import View from 'nuke-view'; import Text from 'nuke-text'; import Icon from 'nuke-icon'; import { MultiRow } from 'nuke-layout'; import Page from 'nuke-page'; import { StyleProvider } from 'nuke-theme-provider'; const ICONS = { v2:["like","live","lock","mail","manage","message"] } let smallerIcons = { Core:{ [`icon-m`]: 20, }, }; let largerIcons = { Core:{ [`icon-m`]: 70, }, }; let App = class NukeDemoIndex extends Component { constructor() { super(); } renderGridCellV2 = (item,index) => { return <View style={styles.iconCell}> <Icon version="v2" style={[styles.icon]} name={item} /> <Text style={styles.iconShowCode}>{item}</Text> </View> } render() { return ( <Page title="Icon"> <Page.Intro main="变小"></Page.Intro> <View style={styles.lineWithMargin}> <StyleProvider style={smallerIcons}> <MultiRow dataSource={ICONS['v2']} rows={3} renderRow={this.renderGridCellV2} /> </StyleProvider> </View> <Page.Intro main="变大"></Page.Intro> <View style={styles.lineWithMargin}> <StyleProvider style={largerIcons}> <MultiRow dataSource={ICONS['v2']} rows={3} renderRow={this.renderGridCellV2} /> </StyleProvider> </View> </Page> ); } } const styles={ icon:{ marginBottom:20, }, iconCell:{ justifyContent:'center', height:'180rem', alignItems:'center', borderWidth:'1rem', borderColor:'#eeeeee', borderStyle:'solid', }, lineWithMargin:{ marginLeft:'40rem', marginRight:'40rem', backgroundColor:'#ffffff' }, iconShowCode:{ fontSize: 24, color:'#999999', } } render(<App/>); ````