Witajcie. Zaczelam prace z frameworkiem Vue. Mam problem z checboxami, ktore chcialam zrobic troche customowo ( i tu zaczyna sie problem bo mi nie dzialaja z moimi cssami, a zwykly checbox dziala... ). Z tego co zauwazylam to tag label psuje mi wszystko i mam brak odopwidzi i reakcji ze strony checboxa, gdy chce nacisnac na neigo ( tka jakby byl disable ), a reaguje mi tylko pierwszy i nie wiem kompletnie dlaczego?
Tutaj moj kod z Vue:

  1.  
  2. Vue.component('todoList', {
  3. props: ['todoObj'],
  4. template: '<tr>' +
  5. '<td><div class="round"><input id="todoObj.id" type="checkbox" v-on:click="toggle" v-model="todoObj.done" /><label for="todoObj.id"></label></div></td>' +
  6. '<td class="textTodo">{{todoObj.description}}</td>' +
  7. '<td><button v-on:click="deleteTodo" class="btn-xs btn-danger">delete</button></td>' +
  8. '</tr>',
  9.  


A tutaj moj template:

  1.  
  2. <div class="container">
  3. <div class="row">
  4. <div class="col-md-8 col-md-offset-2">
  5. <div class="panel panel-default">
  6. <div class="panel-heading">Dashboard</div>
  7.  
  8. <div class="panel-body">
  9.  
  10. <div id="appTest">
  11. <div>@{{error}}</div>
  12.  
  13.  
  14.  
  15. <table class="table-responsive">
  16. <todo-list
  17. v-for="todo in todos"
  18. v-bind:todo-obj="todo"
  19. v-bind:key="todo.id"
  20. :todo-obj.sync="todo"
  21. v-on:usun="deleteTod"
  22. ></todo-list>
  23. </table>
  24.  
  25. <div v-if="isLogged" id="todoText">
  26. <textarea v-model="todoText" cols="53" rows="5"></textarea>
  27. <div id="addButton">
  28. <button v-on:click="addTodo" class="btn btn-success" >Dodaj</button>
  29. </div>
  30. </div>
  31. <div v-else>
  32. Musisz sie
  33. <a href="login">zalogowac</a>
  34. zeby dodawac nowe zadania
  35. </div>
  36.  
  37. </div>
  38. </div>
  39. </div>
  40.  
  41. </div>
  42. </div>
  43. </div>
  44.  



Czy ktos jest w stanie mi podpowiedziec dlaczego z moimi customowymi checkboxami reaguej mi tylko pierwszy, a bez dziala wszystko bez zarzutu? Albo jak to naprawic?

A tu cssy:
  1. .round {
  2. position: relative;
  3. width: 30px;
  4. margin-bottom: 7px;
  5. }
  6.  
  7. .round label {
  8. background-color: #fff;
  9. border: 1px solid #ccc;
  10. border-radius: 50%;
  11. cursor: pointer;
  12. height: 28px;
  13. left: 0;
  14. position: absolute;
  15. top: 0;
  16. width: 28px;
  17. }
  18.  
  19. .round label:after {
  20. border: 2px solid #fff;
  21. border-top: none;
  22. border-right: none;
  23. content: "";
  24. height: 6px;
  25. left: 7px;
  26. opacity: 0;
  27. position: absolute;
  28. top: 8px;
  29. transform: rotate(-45deg);
  30. width: 12px;
  31. }
  32.  
  33. .round input[type="checkbox"] {
  34. visibility: hidden;
  35. }
  36.  
  37. .round input[type="checkbox"]:checked + label {
  38. background-color: #66bb6a;
  39. border-color: #66bb6a;
  40. }
  41.  
  42. .round input[type="checkbox"]:checked + label:after {
  43. opacity: 1;
  44. }
  45.  
  46.