Operasi set Vuejs pada kunci gagal: sasaran ialah baca sahaja
P粉785905797
2023-08-26 11:26:25
<p>Saya menggunakan Laravel9 dan Vuejs3.
Saya mempunyai pandangan bilah yang menghantar pembolehubah php kepada komponen vue: </p>
<pre class="brush:php;toolbar:false;"><subscription-borang
lokasi="{{ $props['lokasi'] }}"
orientation="{{ $props['orientation'] }}"
/></pra>
<p>Dalam vue utama tempat saya menerima data, saya mempunyai kod berikut dalam tetapan skrip: </p>
<pre class="brush:php;toolbar:false;">const initProps = defineProps(['lokasi', 'orientasi']);
nilai const = reaktif(initProps);</pre>
<p>Vue induk ini memanggil komponen seperti ini: </p>
<pre class="brush:php;toolbar:false;"><komponen
v-bind:is="langkah[langkah]"
v-bind:formValues="nilai"
></komponen></pra>
<p>Masalahnya ialah pembolehubah reaktif <kod>nilai</code> saya tidak boleh ditulis dalam vue anak saya.
Saya mendapat ralat</p>
<pre class="brush:php;toolbar:false;">[Vue warn] Tetapkan operasi pada kunci "lokasi" gagal: sasaran ialah baca sahaja.</pre>
<p>Ini berlaku apabila saya melakukannya: </p>
<pre class="brush:php;toolbar:false;">props.formValues.location = location;</pre>
<p>Ia berfungsi apabila saya tidak perlu menghantar pembolehubah php dari blade ke vue induk. Tetapi sekarang saya mempunyai dua tahap prop data, dari bilah ke vue utama dan kemudian dari vue utama kepada subkomponen dan ia dibaca sahaja. </p>
<p>Bantuan! </p>
<p>Saya cuba menukar <code>initProps</code> atau <code>values</code> </p>
Saya sangat kecewa... Ini tidak berfungsi kerana DefineProps() saya kembali tidak ditentukan Masalahnya ialah: huruf besar! Saya berubah
kepada
DefineProps() saya mengembalikan objek saya! Mengapa ini tidak berfungsi dengan huruf besar?