「Vue.js」において、親コンポーネントから子コンポーネントへ渡した変数の値を子コンポーネントで変更した場合コンソールにエラー(warning)が表示されてしまうのですが、こちらについて少々お聞きしたい部分があり質問させて貰いました。
エラー内容で検索をかけた所、こちらQiita記事など複数の記事がヒットした為、拝見させて頂いたのですが、少々解決したい用件とは異なっていました。
自分は、親コンポーネントに値を返すのではなく、子コンポーネント内でデータを変更しそのコンポーネント内のみで使用する形を考えていました。
その為、.sync
やcomputed
で、$emit()
しない為、こちらは適切ではないのかなと考えています。
値を変更し、使用することのみで考えた際に何か良い方法がありましたら、教えて頂けましたら幸いです
※追記
以下は親コンポーネントになります
<template> <div> <!-- 子テンプレートを呼び出し、プロパティvalueで変数msgを共有 --> <Chiled :testData="testData /> </div> </template> <script> import Chiled from "./Chiled" export default { components:{ hiled //子テンプレをタグとして使えるようにする }, data(){ return{ testData:false } } } </script>
以下は子コンポーネントになります
<template> <!-- 渡すテンプレート --> <div> <p v-if="testData">test</p> <form action="" method="get" v-on:submit.prevent="submit"> <button class="btn" type="submit" > </button> </form> </div> </template> <script> export default { props:{ testData{ type:boolean, require:false, default:null }, }, methods: { // 再取得ボタンからのリクエスト submit() { this.testData = false; } } } </script>
回答1件
あなたの回答
tips
プレビュー