You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
<template> <uvImage :src="src" :mode="mode" :width="width" :height="height" :shape="shape" :radius="radius" :lazyLoad="lazyLoad" :showMenuByLongpress="showMenuByLongpress" :loadingIcon="loadingIcon" :errorIcon="errorIcon" :showLoading="showLoading" :showError="showError" :fade="fade" :webp="webp" :duration="duration" :bgColor="bgColor" :customStyle="customStyle" @click="$emit('click')" @error="$emit('error')" @load="$emit('load')" > <template v-slot:loading> <slot name="loading"></slot> </template> <template v-slot:error> <slot name="error"></slot> </template> </uvImage> </template>
<script> /** * 此组件存在的理由是,在nvue下,u-image被uni-app官方占用了,u-image在nvue中相当于image组件 * 所以在nvue下,取名为u--image,内部其实还是u-iamge.vue,只不过做一层中转 */ import uvImage from '../u-image/u-image.vue'; import { props } from '../u-image/props.js'; import { mpMixin } from '../../libs/mixin/mpMixin'; import { mixin } from '../../libs/mixin/mixin'; export default { name: 'u--image', mixins: [mpMixin, props, mixin], components: { uvImage }, emits: ['click', 'error', 'load'] } </script>
|