Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

233
Views
how to use draggable in vuejs

i'm trying to use draggable to drag header column in table like this

<thead>
  <draggable
    v-model="fields"
    :element="'tr'"
    :options="{ animation: 150 }"
  >
    <th class="" style="min-width: 59px"><Checkbox /></th>
    <th
      v-for="(field, index) in fields"
      :key="index"
      :style="field.type === 'date' ? 'text-align:center' : ''"
    >
      {{ field.text }}
    </th>
  </draggable>
</thead>
<script>
  import Checkbox from "./Checkbox.vue";
  import draggable from "vuedraggable";
  export default {
    components: {
      Checkbox,
      draggable,
    },
    props: {
      fields: Array,
      data: Array,
    },

But when i launch project, it show error

Avoid mutating a prop directly since the value will be overwritten whenever the parent component re-renders. Instead, use a data or computed property based on the prop's value. Prop being mutated: "fields" Please help me Ths so much

about 4 years ago · Juan Pablo Isaza
1 answers
Answer question

0

The problem is that you defined your fields: Array and you are using it inside of your v-for there it is correct (if it's really an array).

But you have also used name fields inside of your dragable v-model. If you will rename this and change everything else inside of your code to the new name it should work out.

So in your case you send your data (fields) from your parent.vue to your child.vue and each time you select something from your dragable it will overwrite your array in the v-for.

So little example:
Array Fields: [Cat, Dog, Mouse] - You are selecting with v-model fields Cat - now your new Array Fields will be overwritten..

Hopefully it's now clear for you!

about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!