cari

Rumah  >  Soal Jawab  >  teks badan

v-for tidak mempunyai pilihan untuk memasangnya

Saya ada masalah dengan v-for saya. Saya memanggil API dan mendapatkan semula data, tetapi v-for tidak dikemas kini.

Ini html saya:

<input list="listenomspartenaires" id="inputlistenomspartenaires" type="text" name="nominputlistenomspartenaires">
        <datalist id="listenomspartenaires">
           <option v-for="partenaire in listedespartenaires" :value="partenaire.nom" :key="partenaire.idpartenaire" :data-idpartenaire="partenaire.idpartenaire" />  <!--  -->
</datalist>

dan JS saya:

<script lang="js">
    import { defineComponent } from 'vue';

    export default defineComponent({
        data() {
            return {
                listedespartenaires : []
            };
        },
        methods:{            
            SetNoms(lesnoms){
                this.listedespartenaires = lesnoms;
                alert(lesnoms);
            }
        },
        mounted() {
            fetch("https://localhost:7264/api/partenaires/GetNoms")
                .then((response) => response.text())
                .then((data) => this.SetNoms(data));
        }
    });
</script>

Makluman menunjukkan data supaya ia boleh diambil dengan baik, tetapi input saya tidak sah.

Saya juga cuba memberikan "listedespartenaires" terus dari get tanpa melalui kaedah, tetapi hasilnya adalah sama.

Saya juga mencuba this.$forceUpdate(); selepas menetapkan "listedespartenaires". Tetapi tiada kejayaan.

Boleh sesiapa tolong saya?

Terima kasih,

Philippe

P粉988025835P粉988025835230 hari yang lalu477

membalas semua(1)saya akan balas

  • P粉308089080

    P粉3080890802024-04-04 10:08:49

    CubaJSON。 parse() Respons anda:

    const app = Vue.createApp({
      data() {
        return {
          listedespartenaires : [],
          selected: null
        };
      },
      methods:{            
        setNoms(lesnoms){
          this.listedespartenaires = JSON.parse(lesnoms);
          //alert(lesnoms);
        }
      },
      mounted() {
        fetch("https://jsonplaceholder.typicode.com/users")
          .then((response) => response.text())
          .then((data) => this.setNoms(data));
      }
    })
    app.mount('#demo')
    sssccc
    
    {{ selected }}

    balas
    0
  • Batalbalas