दुर्बल में डायनामिक रूप से तैयार विकल्पों के साथ एक का चयन इनपुट के मूल्य, बाध्य करने के लिए कैसे

वोट
0

मैं एक का चयन इनपुट, कि किसी बाहरी स्रोत से डेटा के साथ से भर जाता है के साथ एक सुगठित घटक है।

मैं चयन इनपुट कैसे बाँध ताकि एक विशिष्ट विकल्प चुना जाता है है।

अगर मैं विकल्प मान या चयनित मूल्य स्थिर बनाने के लिए, यह ठीक काम करने के लिए लगता है, लेकिन अगर नहीं दोनों गतिशील हैं।

यहाँ मेरी कोड है

<script>
    export let params = {}

    let seasons = [];
    let selected = '';

    onMount(async () => {
        selected = params.seasonId; 
    /* fetch is called here and returns a list of seasons, which is passed to seasons array */
    })
</script>

<p><select bind:value={selected}>
    <option value= disabled>-- Select Season --</option>
    {#each seasons as season}
    <option value={season.id}>{season.description}</option>
    {/each}
</select></p>
<p>param: {params.seasonId}</p>
<p>Selected: {selected}</p>

कोड से, इस HTML आउटपुट है।

<p><select>
    <option value= disabled>-- Select Season --</option>
    <option value=4>2019</option>
    <option value=3>2018</option>
    <option value=2>2017</option>
    <option value=1>2016</option>
</select></p>
<p>param: 3</p>
<p>Selected: 3</p>

मैं उम्मीद है कि एक बार पेज लोड हो जाए, विकल्प 3 2018 चुना जाएगा, लेकिन यह परिवर्तन नहीं करता है और - सीजन का चयन करें - चयनित विकल्प है।

09/10/2019 को 12:56
का स्रोत उपयोगकर्ता
अन्य भाषाओं में...                            


2 जवाब

वोट
0

अपने कोड के इस सरल उदाहरण में यह काम करने के लिए लगता है: https://svelte.dev/repl/d95c63158f944ce996aaef092e4bff73?version=3.12.1

मैं ध्यान दें कि यदि आप के लिए प्रारंभिक चयनित मान बदलने के लिए है

let selected = 3;

यह अब काम करता है, इसलिए मुद्दों के मूल्य में है params.seasonId

10/10/2019 को 14:48
का स्रोत उपयोगकर्ता

वोट
0

यह ठीक काम करना चाहिए।

अधिक कोड देखे बिना, मेरा अनुमान है कि हो सकता है params.seasonIdऔर season.idअलग अलग प्रकार के होते हैं (एक स्ट्रिंग और अन्य संख्या)

09/10/2019 को 13:25
का स्रोत उपयोगकर्ता

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more