Así que estoy iterando a través de una matriz (usando Vue). En esta matriz hay objetos con cadenas.
notifications: [ 0: { idType: 1 type: "delivered" user: 12 visibility: true seller: 15 product: "phone" additionalData: "{"type":"iphone","idType":5,"number":"2"}" } 1: { idType: 2 type: "meeting" user: 12 visibility: null seller: 12 company: "hotell" additionalData: "{"location":"office","idType":7,"number":"8"}" } 2: { idType: 1 type: "invoiced" user: 15 visibility: null seller: 11 value: 150000 additionalData: "{"payment":"credit","idType":10,"number":"1"}" } ]Entonces necesito analizar toda la información en los diferentes datos adicionales. Se complica un poco cuando lo hago para cada uno en la plantilla, así que quiero crear un método para ello.
He intentado algo como esto:
parseText(type: string) { return JSON.parse(this.note.additionalData).type },Obviamente, esto no funciona, pero no puedo encontrar la manera de hacerlo funcionar. (enviando una nota al componente principal como accesorio, y también estoy haciendo v-for en el componente principal)
No estoy seguro de por qué el method de búsqueda no funciona para usted, pero también puede crear un componente que reciba el objeto como accesorio y tenga una propiedad calculada dentro que lo analizará automáticamente por usted.
<Notification v-for="notification in notifications :key="notification.id" :notification="notification" /> props: { notification: { required: true, type: Object, } }, computed() { additionalDataObj() { return JSON.parse(this.notification.additionalData) } }