suchen

Heim  >  Fragen und Antworten  >  Hauptteil

So implementieren Sie die Vue-Anwendung, um ausgewählte Optionen auf eine andere Seite zu übertragen

<p>Auf der ersten Seite meiner Vue-App habe ich ein Dropdown-Menü mit einer Liste von E-Mail-Adressen. </p> <p>Ich möchte den ausgewählten Wert/Text speichern und ihn als Parameter oder Variable auf der Posteingangsseite verwenden, zu der ich weitergeleitet werde. </p> <p>Dies ist der Code für das Dropdown-Menü mit v-autocomplete: </p> <pre class="brush:html;toolbar:false;"><v-autocomplete dicht gefüllt label="E-Mail auswählen" v-model="Postfächer" :items="Postfächer" item-text='mailbox' item-value='mailbox'> </v-autocomplete> </pre> <p>Dies ist eine Schaltfläche, die als v-btn fungiert und zur Weiterleitung zur Posteingangsseite verwendet wird. </p> <pre class="brush:html;toolbar:false;"><v-btnrounded color="primary" @click="$router.push('Inbox')"> Postfach laden</v-btn> </pre> <p>Wie speichere ich den Wert eines ausgewählten Postfachs zur Verwendung auf der Posteingangsseite, zu der ich weitergeleitet werde? </p>
P粉308089080P粉308089080480 Tage vor578

Antworte allen(2)Ich werde antworten

  • P粉083785014

    P粉0837850142023-08-29 00:49:28

    将选定的值作为路由参数传递:

    $router.push({
        name: "Inbox",
        params: { selectedValue: YOUR_VALUE }
      });

    在收件箱页面中,您可以通过以下方式访问:

    $route.params.selectedValue

    Antwort
    0
  • P粉038161873

    P粉0381618732023-08-29 00:36:29

    我建议你开始使用Vuex :)

    这是一个可以在整个应用程序中共享响应式数据对象的库。

    以下是你可能的代码示例:

    // /store/index.js
    
    export state: () => {
       mailbox: '',
    }
    
    export mutation: () => {
       SET_MAILBOX(state, mailbox) {
          state.mailbox = mailbox
       }
    }
    
    // your-page.vue
    <template>
        <v-autocomplete
            v-model="mailboxes"
            dense
            filled
            label="选择邮箱"
            :items="mailboxes"
            item-text='mailbox'
            item-value='mailbox'>
          </v-autocomplete>
    </template>
    
    <script>
    export default {
       computed: {
          mailboxes: {
             get() {
                this.$store.state.mailbox // 从Vuex存储中获取值
             },
             set(newMailbox) {
                this.$store.commit('SET_MAILBOX', newMailbox) // 更新Vuex存储
             },
          }
       }
    }
    </script>

    Antwort
    0
  • StornierenAntwort