为何获取不了,pickey里我选中的键值,只能显示选中的自定义下标。我想获取数组里的ID值,不知下面哪里写不对?

为何获取不了,pickey里我选中的键值,只能显示选中的自定义下标。我想获取数组里的ID值,不知下面哪里写不对?
this.a4数组的内容:

img


调试结果截图:

img

 <picker  @change="bindPickerChange" :value="a4.id" :range="a4" range-key="name">
    <view class="picker">
      当前选择:{{a4[index].name}}
    </view>
  </picker>


<script>
    export default {
        data(){
             return{
                index: 0,
    a2:[],
        a3: {id1:'3',id2:'addoil',id3:''},
        a4:[],
        
                }
                },

            methods:{ // methods包裹函数

//封装调用函数开始
                              getData2(){
                                  //开始调用封装函数
                        this.request({
                            url:'1.asp',
                            method: '',
                                            data:{id1:'4',id2:'addoil'},
                             header:'content-type: application/x-www-form-urlencoded'
                             })
                             .then(res => {
                                                     console.log(res)
                                                                     this.a4=(res)
                                                    
                                             })
                        }
    }    ,
                            //封装调用函数结束
    
bindPickerChange: function(e) {
                console.log('picker发送选择改变,携带值为:' + e.detail.value),

    console.log('这一条的值', this.data.a4[e.detail.value])
                this.index = e.detail.value
            },
            
                        
    }
</script>

调试报错是因为43行this.data.a4[e.detail.value]应该是this.a4[e.detail.value]e.detail.value是选中的下标,this.a4[e.detail.value]取到的就是选中的键值对