Ralat Jenis Tidak Ditangkap: tags.join bukan fungsi.
P粉729436537
2023-07-28 13:59:53
<p>Saya mempunyai halaman dengan berbilang teg yang disimpan dalam tatasusunan. Saya mahu mengedit halaman dan apabila cuba memuatkan tatasusunan teg ke dalam TagsInput saya mendapat mesej ralat berikut: </p>
<pre class="brush:php;toolbar:false;">Uncaught TypeError: tags.join bukan fungsi</pre>
<p>Berikut ialah coretan kod yang berkaitan dengan ralat ini: </p>
<pre class="brush:php;toolbar:false;">import { TagsInput } daripada "react-tag-input-component";
const Halaman Kemas Kini = () =>
const [tag, setTags] = useState("");
const tagsString = tags.join(", ");
// Mengambil teg dari bahagian belakang dan menyimpan ke dalam setTags
setTags(<beberapa_kod_untuk_axios_get>)
kembali(
<div>
<FormControl fullWidth margin="normal">
<TagsInput
label="Tag"
saiz="kecil"
value={tagsString}
onChange={setTags}
placeHolder="Taip teg anda dan tekan enter"
/>
</FormControl>
</div>
)
}</pre>
<p>Turut mencuba perkara berikut dan mendapat mesej ralat bahawa n.map bukan fungsi: </p>
<pre class="brush:php;toolbar:false;"><div className="tags">
{tags.length
? tags.map((type, i) => (
<TagsInput
kunci={i}
label="Tag"
saiz="kecil"
nilai={i}
onChange={setTags}
placeHolder="Taip teg anda dan tekan enter"
/>
))
: <TagsInput
label="Tag"
saiz="kecil"
value={tags}
onChange={setTags}
placeHolder="Taip teg anda dan tekan enter"
/>
}
</div></pre>
<p>Menggunakan kod berikut, saya dapat melihat data dalam konsol: </p>
<pre class="brush:php;toolbar:false;">tags.forEach((elemen) => {
console.log(elemen);
});</pre>
<p><br /></p>
Tag bukan array, ia adalah rentetan, mengikut baris ini:
Tidak kira apa yang berlaku
setTags(<some_code_for_axios_get>)
, the first render,tags
will be""