Utilisez l'attribut calculé pour convertir les données dans la fonction setup() de l'API Vue Composition
P粉959676410
P粉959676410 2024-01-16 12:15:02
0
1
467

Nous sommes actuellement en train de passer du standard VUE 2 à l'API Composition, et j'essaie de comprendre comment réécrire notre calculé actuel pour prendre en charge l'API Composition :

setup() {
    const store = useStore<StoreState>();
    // 问题:我如何将infoFields实现到setup中?
    // const contactSingle = computed(() => store.state.contacts.contactSingle);
    return { contactSingle };
  },
computed: {
    ...mapGetters("contacts", ["getContact"]),
    infoFields(): any {
      return [
        {
          value: (this as any).getContact.customer.firstName,
          label: "名字",
        },
        {
          value: (this as any).getContact.customer.lastName,
          label: "姓氏",
        },
        ...
        ...
        ];
    },


 <v-row>
  <v-col class="pt-0" v-for="(item, i) in infoFields" :key="i + '-field'" cols="12" xs="12" sm="6" md="6" lg="4">
    <BaseSheetField :value="item.value" :label="item.label" />
  </v-col>
</v-row>

P粉959676410
P粉959676410

répondre à tous(1)
P粉068510991

Je ne sais pas exactement quel est le problème, mais je pense que l'utilisation de store.getters dans une propriété calculée devrait le résoudre :

const infoFields = computed(() => {
    return [
        {
          value: store.getters["contacts/getContact"].customer.firstName,
          label: "名字",
        },
        {
          value: store.getters["contacts/getContact"].customer.lastName,
          label: "姓氏",
        }
    ]
})
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal