观看不会计算动作

时间:2019-02-04 06:04:34

标签: vue.js vuejs2

我有一个渠道,用户从这里开始给出单词列表。当他们进行下一步时,将为每个单词创建一个数组。用户可以返回并添加单词,因此我需要能够检测到单词数量的长度有所变化。检测到长度后,我希望能够添加相应数量的新数组或删除以前的数组。

我目前有一个“ Watch”属性,该属性正在监视返回用户输入长度的计算属性。我还具有boolean类型的data属性,以跟踪用户是否通过了用户输入页面,以便原始功能仅运行一次。然后,如果他们返回,则Watch中的函数将检查其值是否为“ True”,这意味着他们已经在下一步中并返回。但是,Watch中的功能无法启动。我验证了输入的长度实际上在变化,并且布尔值也设置为“ true”。因此,我认为问题出在Watch属性内,但不确定是什么。

data: {

 addedKeywords: false,
 newAds:[
  []
  ]
 },
 methods: {
 baseAds(){
  if(this.step3Base == false){
    this.newAds[0].push({
      id: 0,
      headline1: 'Headline 1',
      headline2: 'Headline 2',
      headline3: 'headline3',
      desc1: 'This is your description 1',
      desc2: 'This is your description 2',
      finalurl: 'www.finalURL.com',
      path1: '',
      path2: '',
      boolean: true
    })
    for(var x = 1; x < this.options.length; x++){
      this.newAds.push([]);
    }
  }
  this.step3Base = true;
 },
 restOfAds (){
  var length = this.options.length
  if(this.addedKeywords === false){
    for(var x = 1; x < length; x++){
      this.newAds[x].push({
        id: x,
        headline1: 'New',

      })
    }
    this.addedKeywords = true;
  }
 },
 lengthInput: function (){

  return this.options.length

}
},
watch: {
lengthInput: function(oldlength, newLength){
  if(newLength > oldlength && this.addedKeywords != false){
    for(var x = oldLength; x < newLength; x++){
      this.newAds.push([{
        id: x,
        headline1: 'New',

      }])
    }
  }

}
}

最终目标是能够让用户返回并添加单词,然后将新数组添加到主数组中以获取相应的新单词

0 个答案:

没有答案