uni-app小程序开发使用uView,u-model传入富文本内容过长,真机上无法滚动
找到u-model插件,在slot内容的外层自定义加入一个scroll-view标签,设置scroll-y=“true”,指定高度。
<template><view><u-popup :zoom="zoom" mode="center" :popup="false" :z-index="uZIndex" v-model="value" :length="width":mask-close-able="maskCloseAble" :border-radius="borderRadius" @close="popupClose" :negative-top="negativeTop"><view class="u-model"><view v-if="showTitle" class="u-model__title u-line-1" :style="[titleStyle]">{{ title }}</view><view class="u-model__content"><view :style="[contentStyle]" v-if="$slots.default || $slots.$default"><!-- 自定义加入scroll-view scroll-y="true" --><scroll-view scroll-y="true" style="height: 1000rpx;"><slot /></scroll-view></view><view v-else class="u-model__content__message" :style="[contentStyle]">{{ content }}</view></view><view class="u-model__footer u-border-top" v-if="showCancelButton || showConfirmButton"><view v-if="showCancelButton" :hover-stay-time="100" hover-class="u-model__btn--hover" class="u-model__footer__button":style="[cancelBtnStyle]" @tap="cancel">{{cancelText}}</view><view v-if="showConfirmButton || $slots['confirm-button']" :hover-stay-time="100" :hover-class="asyncClose ? 'none' : 'u-model__btn--hover'"class="u-model__footer__button hairline-left" :style="[confirmBtnStyle]" @tap="confirm"><slot v-if="$slots['confirm-button']" name="confirm-button"></slot><block v-else><u-loading mode="circle" :color="confirmColor" v-if="loading"></u-loading><block v-else>{{confirmText}}</block></block></view></view></view></u-popup></view>
</template>
在page中的代码:
<u-modal v-model="show" :title="notice"><view class="slot-content"><rich-text :nodes="content"></rich-text></view>
</u-modal>