8

タイトルが示すように、親コンポーネントから子コンポーネントにメソッドを渡そうとしています。

例えば、

App.html

<div>
  <TodoItem
     done={todo.done}
     toggle={toggle}
  />
</div>
<script>
 import TodoItem from './TodoItem.html';
 export default {
   components: {
     TodoItem,
   },
   methods: {
     toggle(index) {
       console.log(index);
     },
   },
 };
</script>

TodoItem.html

<div>
  <button on:click="toggle(0)"></button>
</div>
<script>
 export default {
   methods: {
     toggle(index) {
       // a guess. this works if you pass in console.log
       this.options.data.toggle(index)
     },
   },
 };
</script>

望ましい機能は、TodoItem がそのデータを使用して親のメソッドを呼び出すことです。

この例は壊れており、コンソール ログTypeError: this.options.data.toggle is not a function.

4

3 に答える 3