nuke-picture

0.1.1 • Public • Published

Picture

  • category: UI
  • chinese: 图片组件
  • type: UI组件

注意:nuke-picture 不在 nuke 大包中,需小包方式引入

注意:lazyload 仅h5有效,要开启 lazyload 功能,Web 端需引入//g.alicdn.com/kg/appear/0.1.2/appear.min.js

API

参数 说明 类型 默认值
source {uri: ''} object
style 样式,必须设置 {width:'500',height:'500' object
resizeMode 组件尺寸和图片尺寸不成比例时如何调整图片的大小。可用值:cover,contain,stretch string stretch
forceUpdate shouldComponentUpdate 是否强制更新 Boolean false
lazyload(仅h5 根据图像是否在可视范围内延迟加载图像 Boolean false
autoPixelRatio(仅h5 在高分辨率下使用二倍图 Boolean false
placeholder(仅h5 lazyload 时显示的背景图 URL string 一张1px base64图
autoRemoveScheme(仅h5 图像 URL 自动删除协议头 Boolean false
autoReplaceDomain(仅h5 图像 URL 域名替换成 gw.alicdn.com Boolean false
autoScaling(仅h5 为图像 URL 添加缩放后缀,将会根据 style 内的 width 属性添加缩放后缀 Boolean false
autoCompress(仅h5 添加质量压缩后缀 Boolean false
compressSuffix(仅h5 图像质量压缩后缀规则 array ['Q75', 'Q50']
highQuality(仅h5 使用高质量的压缩后缀 Boolean false
ignoreGif(仅h5 所有针对 URL 的优化是否忽略 gif 格式的图像,默认忽略 Boolean true

示例

<Picture
    source={{uri: 'https://gw.alicdn.com/tfscom/tuitui/TB2MuUPpVXXXXc6XXXXXXXXXXXX_!!2741895938.jpeg'}}
    style={{
        width: '620rem',
        height:'400rem'
    }}
    lazyload={true}
/>

resizeMode

  • cover: 在保持图片宽高比的前提下缩放图片,直到宽度和高度都大于等于容器视图的尺寸(如果容器有padding内衬的话,则相应减去)。译注:这样图片完全覆盖甚至超出容器,容器中不留任何空白。
  • contain: 在保持图片宽高比的前提下缩放图片,直到宽度和高度都小于等于容器视图的尺寸(如果容器有padding内衬的话,则相应减去)。译注:这样图片完全被包裹在容器中,容器中可能留有空白
  • stretch: 拉伸图片且不维持宽高比,直到宽高都刚好填满容器。

设置 resizeMode 的前提是你设置了 style.width && style.height

forceUpdate

Picture 是一个 PureComponent ,它的 shouldComponentUpdate 决定了当且仅当 porps.source.uri 有变化时才会重新 render。 如果你想忽略它的 shouldComponentUpdate,则传入 forceUpdate={true}

lazyload

开启 lazyload 功能,Wed 端需在 HTML 内引入

<script src="//g.alicdn.com/kg/appear/0.1.2/appear.min.js"></script>

Readme

Keywords

Package Sidebar

Install

npm i nuke-picture

Weekly Downloads

0

Version

0.1.1

License

none

Last publish

Collaborators

  • leanhunter