12: Destroy Todo

Let's work destroy button for each todo.

  1. Add destroyTodo invocation to controller element by x-invocations directive.
  2. Add click event listener to <button> of destroy todo by x-on:click directive. It calls destroyTodo invocation.

<body>
  <section class="todoapp"


      cancelEdit (_, payload, meta) {
        this.editingTodoIndex = -1
      },
      destroyTodo (_, payload, meta) {
        this.todos.splice(payload.index, 1)
      },
    }"
  ::>

    <section class="main">

      <ul class="todo-list"
        x-each="todo, index in todos"
      >

          <div class="view">

            <label @dblclick="editTodo({index}), focusTodo({index})">{{ todo.title }}</label>
            <button class="destroy" @click="destroyTodo({index})"></button>
          </div>

        </li>
      </ul>
    </section>

  </section>
</body>
</html>