Javascript 对象上的vue push属性

Javascript 对象上的vue push属性,javascript,arrays,vue.js,object,Javascript,Arrays,Vue.js,Object,我有一个组件必须将属性推入数组,这是数组: [ { date: "17/11/2020", dateTime: false, hour: "00", minute: "00", }, ]; 该组件有一个按钮: <b-button class="p-0" variant="success

我有一个组件必须将属性推入数组,这是数组:

  [
    {
      date: "17/11/2020",
      dateTime: false,
      hour: "00",
      minute: "00",
    },
  ];
该组件有一个按钮:

      <b-button
        class="p-0"
        variant="success"
        @click="addTime(array)"
      >
        + Add more times
      </b-button>

有可能吗?我试着在click方法中使用.push(),但它不起作用…

您应该这样创建对象

  let records = [
   {
    date: "17/11/2020",
    dateTime: false,
    hour: "00",
    minute: "00",
    time : []
   },
 ];
addTime(timeObject){
   // timeObject = {defaultDateStart: "08:00",defaultDateEnd: "00:00"} 
   records[0].time.push(timeObject)
}
在你的函数中,你可以这样做

  let records = [
   {
    date: "17/11/2020",
    dateTime: false,
    hour: "00",
    minute: "00",
    time : []
   },
 ];
addTime(timeObject){
   // timeObject = {defaultDateStart: "08:00",defaultDateEnd: "00:00"} 
   records[0].time.push(timeObject)
}

显示您的代码无论您迄今为止尝试了什么您的
time
属性的格式不正确。。。它应该是一个对象数组,而不是数组中不可能的对象-除此之外,您可能希望
这个。WhateVerthHearray被称为[0]。time.push(whatYouWantToPush)
@FahadSubzwari我尝试了以下方法:`methods:{addTime(array){consthour={defaulTimeStart:“08:00”,defaultTimeEnd:“00:00”,};array.push(hour);},},},`但它不是work@Bravo我尝试了,它在处理程序上给了我以下错误:“TypeError:无法读取未定义“]的属性“0”]可能您键入了错误的
调用了什么
?您还没有显示数据的位置(即,它是组件数据的属性吗?它是全局的吗?是其他的吗?)好的,我写了这个,它工作了:`方法:{addTime(array){array.time=[];const hour={defaulTimeStart:“08:00”,defaultTimeEnd:“00:00”,};array.time.push(hour);},},`但仅在第一次单击时,在随后的单击中,它不会添加其他“time”对象,因为您做错了。每次单击
addTime
都会将
arra.time
的值反校准到
[]
,那么如何实现这一点呢?这就是为什么我告诉你,你应该在你的每个对象中都有
time:[]
,然后在你的
addTime
函数中,你应该只做这个
const-hour={defaulTimeStart:“08:300”,defaultTimeEnd:“00:00”};array.time.push(hour)
问题是我没有创建初始数组,但我从已安装的库中自动准备好了它。。。。您认为可以从库中修改它吗?这样您就可以修改初始数组,并在以后的代码中使用修改后的数组