收藏
回答

skyline环境下改变一张图片的宽高时会无限重复加载

框架类型 问题类型 API/组件名称 终端类型 微信版本 基础库版本
小程序 Bug image 微信安卓客户端 8.0.58 3.7.12
<snapshot id="view" class="snapshot-container" mode="view">
      <!-- 外层横向滚动 -->
      <scroll-view scroll-x class="outer-scroll">
        <!-- 内层纵向滚动 -->
        <scroll-view scroll-y class="inner-scroll" style="width: {{750 * scale}}rpx;">
          <view class="image-wrapper" style="width: {{750 * scale}}rpx; height: {{750 * scale}}rpx;">
            <image src="{{img}}" class="main-image" style=" width: {{750}}rpx; height: {{750}}rpx; transform: translate(-50%, -50%) scale({{scale}});" />


            <!-- 遍历区域 -->
            <block wx:for="{{areas}}" wx:key="id" wx:for-item="areaItem">
              <view class="element-container" style="right: {{areaItem.right * scale}}rpx; top: {{areaItem.top * scale}}rpx; width: {{areaItem.width * scale}}rpx; height: {{areaItem.height * scale}}rpx;border: {{generate ? (info.borderColor ? '1px dashed ' + info.borderColor : '1px dashed #999') : '1px dashed transparent'}}; box-shadow: 0px 0px 5px 2px {{areaItem.id == currentContainerId && generate ? 'transparent' : 'transparent'}};" data-areaid="{{areaItem.id}}">


                <!-- 当前区域的元素 -->
                <block wx:for="{{elements}}" wx:key="id">
                  <block wx:if="{{item.areaId === areaItem.id}}">
                    <!-- 图片元素 -->
                    <view wx:if="{{item.type === 'image'}}" class="element image-element {{activeElementId === item.id && generate ? 'active' : ''}}" style="width: {{item.width * scale}}rpx;height: {{item.height * scale}}rpx;left: {{item.x * scale}}rpx;top: {{item.y * scale}}rpx;transform: rotate({{item.rotate}}deg);opacity: {{item.opacity}};z-index: {{item.zIndex}};" catchtouchstart="handleTouchStart" catchtouchmove="handleTouchMove" catchtouchend="handleTouchEnd" data-id="{{item.id}}">
                      <image src="{{item.src}}?width={{item.width}}" mode="aspectFill" class="element-image" wx:key="{{item.src}}" />
                      <view class="resize-handle {{generate ? 'resizeactive' : ''}}" catchtouchstart="handleResizeStart" data-id="{{item.id}}" style="transform: scale({{1 * scale}});"></view>
                    </view>


                    <!-- 文字元素 -->
                    <view wx:if="{{item.type === 'text'}}" class="element text-element {{activeElementId === item.id && generate ? 'active' : ''}}" style="width: {{item.width * scale}}rpx;height: {{item.height * scale}}rpx;left: {{item.x * scale}}rpx;top: {{item.y * scale}}rpx;transform: rotate({{item.rotate}}deg);opacity: {{item.opacity}};color: {{item.color}};writing-mode: {{item.vertical ? 'vertical-rl' : 'horizontal-tb'}};font-size: {{item.fontSize * scale}}rpx;letter-spacing: {{item.spacing * scale}}rpx;z-index: {{item.zIndex}};" catchtouchstart="handleTouchStart" catchtouchmove="handleTouchMove" catchtouchend="handleTouchEnd" data-id="{{item.id}}">
                      {{item.content}}
                      <view class="resize-handle {{generate ? 'resizeactive' : ''}}" catchtouchstart="handleResizeStart" data-id="{{item.id}}" style="transform: scale({{1 * scale}});"></view>
                    </view>
                  </block>
                </block>
              </view>
            </block>
          </view>
        </scroll-view>
      </scroll-view>
    </snapshot
回答关注问题邀请回答
收藏

3 个回答

  • 社区技术运营专员-Jahozheng
    社区技术运营专员-Jahozheng
    星期日 15:51

    更新最新工具nightly版试试可以复现么

    星期日 15:51
    有用
    回复
  • 夏味
    夏味
    3小时前

    这个 bug 真牛,真机也能复现吗?

    3小时前
    有用
    回复
  • A.ʚ辰ɞ
    A.ʚ辰ɞ
    05-07

    图片宽高是图片元素容器的百分百,我的容器是一个可拖住改变大小元素,在图片容器发生改变的时候图片也会改变大小,只要元素发生改变就会出现无限的图片请求。

    05-07
    有用
    回复 1
    • A.ʚ辰ɞ
      A.ʚ辰ɞ
      05-07
      外层作为背景图的图片也出现了这个情况,我使用了scale修改了,使用scale时没问题
      05-07
      回复
登录 后发表内容