2.4.3 • Published 3 years ago

rax-image v2.4.3

Weekly downloads
2,004
License
BSD-3-Clause
Repository
github
Last release
3 years ago

Image

npm

阿里内部同学推荐使用 @ali/rax-picture,对图片尺寸有很多内置的优化策略

支持

Web / Weex / 阿里小程序 / 微信小程序 / 字节跳动小程序

描述

用于展示图片

安装

$ npm install rax-image --save

引用

import Image from 'rax-image';

属性

属性类型默认值必填描述支持
sourceobject: { width: string, height: string, uri: string}-true设置图片的 uri。height和width为可选项,优先级低于style上的同名属性,一般高于其他CSS中的同名属性。
styleobject: { width: number height: number }-true图片样式 width 和 height 为必填属性,否则图片无法正常展示,可以补充其他属性
fallbackSourceobject: { width: string, height: string, uri: string}-false备用图片的 uri(当主图加载失败时加载)。height和width为可选项,优先级低于style上的同名属性,一般高于其他CSS中的同名属性。
loadingstring: 'eager' 'lazy'eagerfalse客户端如何加载图片,其中 Web 下需要浏览器原生支持loading属性。
resizeModestring: 'contain' 'cover' 'stretch'-false决定当组件尺寸和图片尺寸不成比例的时候如何调整图片的大小
modeString:scaleToFillfalse小程序中的图片模式,可选项更多
qualitystring: 'original' 'normal' 'low' 'high' 'auto'-false图片质量
placeholderstring-false占位图的 URL,在图片下载过程中将展示占位图, 图片下载完成后将显示 source 中指定的图片。
onClickfunction-false点击图片时的回调函数
onLoadfunction-false图片加载成功的回调函数
onErrorfunction-false图片加载失败的回调函数
srcstring-false图片下载完成后将显示 src 中指定的图片。

onLoad onError 返回

当完成图片加载成功/失败时,将分别触发 onLoad/onError 中的回调函数 function(event) => {}

weex 下(iOS/Android)

成员类型描述
successboolean标记图片是否成功加载,成功为 1/true,失败为 0/false
sizeobject加载的图片大小对象
size.naturalWidthnumber图片宽度,如果图片加载失败则为 0/-1
size.naturalHeightnumber图片高度,如果图片加载失败则为 0/-1

Web 下是 web 原生的 Event 事件

成员类型描述
targetdom图片自身元素
target.naturalWidthnumber图片宽度
target.naturalHeightnumber图片高度

小程序下

成员类型描述
typestring事件类型
detailobject点击位置信息
targetobject点击对象属性信息
currentTargetobject同上

快应用下

成员类型描述
targetobject图片自身元素
target.data.widthnumber图片宽度
target.data.heightnumber图片高度

示例

普通示例

import { createElement, render } from 'rax';
import DriverUniversal from 'driver-universal';
import Image from '../src/index';

const App = () => {
  const imageRef = useRef(null);
  return (
    <Image
      ref={imageRef}
      source={{
        uri: 'https://gw.alicdn.com/tfs/TB1bBD0zCzqK1RjSZFpXXakSXXa-68-67.png',
      }}
      style={{
        height: '68rpx',
        width: '67rpx',
      }}
    />
  );
};

render(<App />, document.body, { driver: DriverUniversal });

使用 fallbackSource 和 resizeMode

import { createElement, render } from 'rax';
import DriverUniversal from 'driver-universal';
import Image from '../src/index';

const App = () => {
  return (
    <Image
      source={{
        uri:
          'https://gw.alicdn.com/tfs/TB1g6AvPVXXXXa7XpXXXXXXXXXX-215-215.png',
      }}
      fallbackSource={{
        uri:
          'https://gw.alicdn.com/tps/i3/TB1yeWeIFXXXXX5XFXXuAZJYXXX-210-210.png_70x70.jpg',
      }}
      style={{
        width: '100rpx',
        height: '100rpx',
      }}
      resizeMode="cover"
    />
  );
};

render(<App />, document.body, { driver: DriverUniversal });
@everything-registry/sub-chunk-2533tboc-imagetemplate-buytemplate-chattemplate-taobaotemplate-zhihu@bondli/mini-biz-ui@bondli/mini-pos-sdk@bondli/mini-ui@rax-ui/loading@rax-ui/filter@rax-ui/filter-list-select@rax-ui/filter-multi-select@rax-ui/icon@rax-ui/action-sheet@rax-materials/scaffolds-app-js@rax-materials/scaffolds-app-midway-faas@rax-materials/scaffolds-app-midway-miniapp@rax-materials/scaffolds-app-midway-ssr@rax-materials/scaffolds-app-shop@rax-materials/scaffolds-app-ts@rax-materials/scaffolds-basic-app@rax-materials/scaffolds-miniapp-ts@rax-materials/scaffolds-web-app-js@rax-materials/scaffolds-web-app-ts@alizw/tesseract@aligov/tpl-h5-rax@aligov/tpl-h5-rax-sdk@aligov/list-item@aligov/miniapp-erro-modalbox@aligov/miniapp-search-page@aligov/smart-banner@aligov/gov-h5-card-rax-sdk@aligov/gov-h5-guide-rax-sdk@aligov/gov-h5-rate-rax-sdk@aligov/gov-h5-spread-rax-sdk@aligov/miniapp-user-box@aligov/miniapp-user-profile@aligov/miniapp-user-setting@aligov/mobile-app-search@aligov/mobile-c-checkbox@aligov/mobile-c-radio@aligov/h5-gov-login@aligov/h5-rax-scaffold@alimaretail/ma-rax-materials@aliretail/10008224358-abc_456789123456-modules-fe-miniapp-rax-f_app_wire_pc@aliretail/10008224358-abc_456789123456-modules-fe-miniapp-rax-f_applet_rax@aliretail/10008224358-abc_456789123456-modules-fe-wireless-rax-f_app_wire_pc@aliretail/10008224358-appcdxizhi-official-mod-wireless-rax-appxzmk1019@aliretail/10008224358-appcdxizhi-official-mod-wireless-rax-xizhi01mc@aliretail/10008224358-code1-modules-fe-miniapp-rax-mokuai2@aliretail/10008224358-code1-modules-fe-miniapp-rax-mokuai5@aliretail/10008224358-code1-modules-fe-wireless-rax-mokuai1@aliretail/10008224358-code1-modules-fe-wireless-rax-mokuai19@aliretail/10008224358-code1-modules-fe-wireless-rax-mokuai5@aliretail/10008224358-code25-modules-fe-miniapp-rax-mokuai111@aliretail/10008224358-code25-modules-fe-wireless-rax-mokuai222@aliretail/10008224358-dcz_app_2-dc_code_1-mod-wireless-rax-new_self@aliretail/10008224358-dcz_app_2-official-mod-miniapp-rax-samllpro_up@aliretail/10008224358-dcz_app_2-official-mod-miniapp-rax-small_pro_rax_20210524@aliretail/10008224358-dcz_app_2-official-mod-wireless-rax-mokuai_1@aliretail/10008224358-xzwljiaohu1020-modules-fe-wireless-rax-xzmkjiaohu1020@aliretail/1622014846499mod-wireless-rax-new_mokuai_1@aliretail/1622550117773mod-wireless-rax-rax_1_20210608@aliretail/1625467762213mod-miniapp-rax-business_apple_rax_20210813@aliretail/1625467762213mod-wireless-rax-form_012@aliretail/base-member-sdk@aliretail/basemember@aliretail/biz_ha-shop-deploy-pocmod-miniapp-rax-business_apple_rax_20210610@aliretail/biz_ha-shop-deploy-pocmod-miniapp-rax-self_rax_small_1@aliretail/biz_ha-shop-deploy-pocmod-wireless-rax-business_wireless_rax_20210610@aliretail/biz_ha-shop-deploy-pocmod-wireless-rax-self_template_1@aliretail/cloud-retail-npm@aliretail/10008224358-scf_02-modules-fe-wireless-rax-t_wireless_rax4@aliretail/10008224358-scf_02-modules-fe-wireless-rax-wire_app_rax1_pc@aliretail/10008224358-scf_07-modules-fe-wireless-rax-w7_wireless_rax@aliretail/10008224358-scf_08-modules-fe-miniapp-rax-w8_wireless_rax1@aliretail/10008224358-scf_15-official-mod-miniapp-rax-p_applet917@aliretail/10008224358-scf_15-official-mod-wireless-rax-p_wirelessrax917@aliretail/10008224358-scf_9152050-modules-fe-miniapp-rax-p_applet_a@aliretail/10008224358-scf_9152050-modules-fe-wireless-rax-wireless_rax_a@aliretail/10008224358-scf_981137-modules-fe-miniapp-rax-t_applet_1@aliretail/10008224358-scf_981137-modules-fe-wireless-rax-t_wireless_1@aliretail/10008224358-scf_981206-modules-fe-miniapp-rax-y_app_wire3@aliretail/10008224358-scf_981206-modules-fe-miniapp-rax-y_applet_1@aliretail/10008224358-scf_981206-modules-fe-miniapp-rax-y_wire_app_1@aliretail/10008224358-scf_981206-modules-fe-wireless-rax-y_app_wire3@aliretail/10008224358-scf_981206-modules-fe-wireless-rax-y_app_wire_2@aliretail/10008224358-scf_981206-modules-fe-wireless-rax-y_wireless_rax1@aliretail/10008224358-scf_981206-modules-fe-wireless-rax-y_wireless_rax2@aliretail/10008224358-scf_apply-dc_code_1-mod-miniapp-rax-b_applet_01@aliretail/10008224358-scf_apply-dc_code_1-mod-wireless-rax-b_wireless_01@aliretail/10008224358-scf_apply-official-mod-miniapp-rax-p_applet_01@aliretail/10008224358-futu_app02-official-mod-wireless-rax-futu_test_002@aliretail/10008224358-futu_app02-official-mod-wireless-rax-test11@aliretail/10008224358-futu_app02-ttest-mod-wireless-rax-futu_test_mod_biz01@aliretail/10008224358-futu_app1-official-mod-wireless-rax-futu_module_1@aliretail/10008224358-futu_app1-official-mod-wireless-rax-futu_offcial_001@aliretail/10008224358-futu_app1-official-mod-wireless-rax-futu_test_m_003@aliretail/10008224358-futu_app1-official-mod-wireless-rax-test
2.4.3

3 years ago

2.4.2

3 years ago

2.4.1

4 years ago

2.4.1-0

4 years ago

2.4.0

4 years ago

2.3.3-beta.0

4 years ago

2.3.2

4 years ago

2.3.1

4 years ago

2.3.0

4 years ago

2.3.0-0

4 years ago

2.2.6

4 years ago

2.2.5

4 years ago

2.2.5-0

4 years ago

2.2.4

4 years ago

2.2.3

5 years ago

2.2.3-2

5 years ago

2.2.3-1

5 years ago

2.2.2

5 years ago

2.2.2-1

5 years ago

2.2.2-0

5 years ago

2.2.1

5 years ago

2.2.1-beta.0

5 years ago

2.2.0

5 years ago

2.1.1

5 years ago

2.1.1-0

5 years ago

2.1.0

5 years ago

2.0.4

5 years ago

2.0.3

5 years ago

2.0.2

5 years ago

2.0.1

6 years ago

1.1.3

6 years ago

1.1.3-beta.3

6 years ago

1.1.3-beta.2

6 years ago

1.1.3-beta.1

6 years ago

1.1.3-0

6 years ago

1.1.2

6 years ago

1.1.2-1

6 years ago

1.1.2-0

6 years ago

1.1.1

6 years ago

1.1.0

6 years ago

1.1.0-beta.1

6 years ago

1.0.4-beta.4

6 years ago

1.0.4-beta.3

6 years ago

1.0.4-beta.2

6 years ago

1.0.4-beta.1

6 years ago

1.0.3

6 years ago

1.0.1-beta.4

6 years ago

1.0.2

6 years ago

1.0.1

6 years ago

1.0.1-beta.3

6 years ago

1.0.1-beta.2

6 years ago

1.0.1-beta.1

6 years ago

1.0.1-beta.0

6 years ago

1.0.0

6 years ago

1.0.0-beta.1

6 years ago

1.0.0-beta.0

6 years ago

0.6.8

7 years ago

0.6.6-1

7 years ago

0.6.7

7 years ago

0.6.6

7 years ago

0.6.5

7 years ago

0.6.4

7 years ago

0.6.3

7 years ago

0.6.2

7 years ago

0.6.1

7 years ago

0.6.0

7 years ago

0.5.4

7 years ago

0.5.2

7 years ago

0.5.1

7 years ago

0.5.0

8 years ago

0.4.20

8 years ago

0.4.19

8 years ago

0.4.18

8 years ago

0.4.17

8 years ago

0.4.16

8 years ago

0.4.15

8 years ago

0.5.0-beta

8 years ago

0.4.14

8 years ago

0.4.13

8 years ago

0.4.12

8 years ago

0.4.11

8 years ago

0.4.10

8 years ago

0.4.9

8 years ago

0.4.8

8 years ago

0.4.7

8 years ago

0.4.6

8 years ago

0.4.5

8 years ago

0.4.4

8 years ago

0.4.3

8 years ago

0.4.2

8 years ago

0.4.1

8 years ago

0.4.0

8 years ago

0.3.8

8 years ago

0.3.7

8 years ago

0.3.6

8 years ago

0.3.5

8 years ago

0.3.4

8 years ago

0.3.3

8 years ago

0.3.2

8 years ago

0.3.1

8 years ago

0.3.0

8 years ago

0.2.11

8 years ago

0.2.10

8 years ago

0.2.9

8 years ago

0.2.8

8 years ago

0.2.7

8 years ago

0.2.6

8 years ago

0.2.5

8 years ago

0.2.4

8 years ago

0.2.3

8 years ago

0.2.2

8 years ago

0.2.1

8 years ago

0.2.0

8 years ago