解决:

 scroll-view  加 white-space: nowrap;

 scroll-view 子元素加 display: inline-block;

⚠️:不用加 display: flex; 属性

如下代码:

      <view class="instruments-head">
            
            <scroll-view class="instruments-scroll" scroll-x="true">
                <view class="instruments-scroll-item" :class="item.isActive ? 'active' : ''" v-for="(item,index) in instrumentsList" :key="index" @click="handleInstruments(index,item.id)">
                    <image :src="item.img"></image>
                    <view class="head-item">{{ item.text }}</view>
                </view>
            </scroll-view>
            
        </view>
        .instruments-head{
            background-color: #f6f6f6;
            width: 100%;
            height: 200rpx;
            border-bottom: 1px solid #e5e5e5;
            padding: 20rpx 2rpx 20rpx 20rpx;
            margin-bottom: 20rpx;
            .instruments-scroll{
                white-space: nowrap;
                .instruments-scroll-item{
                    display: inline-block;
                    margin-right: 20rpx;
                    width: 160rpx;
                    height: 160rpx;
                    position: relative;
                    border-radius: 15rpx;
                    background-color: #ce4131;
                    box-sizing: border-box;
                    image{
                        width: 100%;
                        height: 100%;
                        border-radius: 15rpx;
                    }
                    .head-item{
                        position: absolute;
                        top: 10rpx;
                        left: 10rpx;
                        color: #fff;
                        font-size: 22rpx;
                        font-weight: bold;
                    }
                }
            }
        }