首页 > 解决方案 > 条件语句不适用于 VueJs 方法

问题描述

我正在尝试添加条件语句,因此当用户切换按钮时它会触发一个动作,例如输出一些文本。

我尝试将条件添加为方法,并将其添加为计算属性但没有成功,我也尝试使用 switch 语句。

我将添加 codepen 链接https://codepen.io/manosx/pen/KELmpj?editors=0010

  clickedTag: function (indexTag) {
      // toggle the active class
      this.$set(this.isClickedTag, indexTag, !this.isClickedTag[indexTag])
      let tagsSelected = _.keys(_.pickBy(this.isClickedTag, _.identity))
      let tagsSelectedSingle = tagsSelected.map(s => `'${s}'`).join(', ')
      console.log(tagsSelectedSingle)
      if (tagsSelectedSingle === '0') { console.log('naylon') }
      else if (tagsSelectedSingle === '1') { console.log('espiga') }
      else if (tagsSelectedSingle === '2') { console.log('omega') }
      else if (tagsSelectedSingle === '3') { console.log('crochet') }
      else if (tagsSelectedSingle === '4') { console.log('thread') }
      else if (tagsSelectedSingle === '5') { console.log('bordado') }
    },

我想添加一个条件语句,根据打开的按钮触发不同的操作。

标签: javascriptarraysmethodsvuejs2frontend

解决方案


它更好用indexOf() ,因为包含在某些浏览器上不起作用。

尝试这个。

if (tagsSelectedSingle.indexOf('0')>=0) { console.log('naylon') }
           if (tagsSelectedSingle.indexOf('1')>=0) { console.log('espiga') }
           if (tagsSelectedSingle.indexOf('2')>=0) { console.log('omega') }
           if (tagsSelectedSingle.indexOf('3')>=0) { console.log('crochet') }
           if (tagsSelectedSingle.indexOf('4')>=0) { console.log('thread') }
           if (tagsSelectedSingle.indexOf('5')>=0) { console.log('bordado') } 

推荐阅读