3

I'm having an array of elements in vuejs, I've some data manipulation with them Like I've a select dropdown which shows the company information and each company information has a tag. Tags are of one sub level, I've joined both the tags as one and stored in database, whenever I select the parent company I want these tags to be selected, I mean it should have class btn-warning and rest all to be btn-primary don't be confused with other select, there options are coming from the filter of first select

So suppose my tag data value is: Investor-Mutual fund, it should split up and Investor button should be selected and Mutual Fund button should have class of btn-primary and this should be changeable only with the select list only

Here's my code pen: https://codepen.io/anon/pen/eWXPaK?editors=1010

This will give you idea what I'm trying to do. Guide me

1 Answer 1

5

I believe this is what you want.

if (!this.selectedCompanies.length > 0){
  const str = this.model.data.find(d => d.name === newValue.label)
  const [currentTag, selectedTag] = str.tag.split("-")
  this.currentTag =  currentTag
  this.selectedTag =  this.tags[this.currentTag].find(t => t.display === selectedTag)
}

Updated pen.

Sign up to request clarification or add additional context in comments.

5 Comments

Error in callback for watcher "company_name": "TypeError: Cannot read property 'split' of undefined". But I want exactly as you did in codepen :(
@NitishKumar I don't get an error in the pen. What is the difference?
Ok solved. Was getting model.data.type and was writing model.data.tag
Can I put @click.prevent? in v-for="tag in tags[currentTag]", as while clicking the buttons it is redirecting
@NitishKumar Not sure how to answer. There doesn't appear to be any reason a re-direct would happen in the pen.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.