J'ai beaucoup joué ces derniers temps sur la manière de définir la valeur initiale dans la propriété de données locale. J'utilise Laravel avec Vue.Js
J'ai ce code ci-dessous dans mon composant P>
order_date: this.dates.order_date
6 Réponses :
Que diriez-vous d'utiliser calculé à la place?
props: [ 'user', 'dates' ], data() { return { bloodTypes: {}, bloodComponents: {} } }, computed: { data: function() { return { order_date: this.dates.order_date, order_details: [] <= should be changed to something dynamically changed object } } }
Il retourne toujours vide et non défini.
Pourquoi initiez-vous des objets d'accessoires? Essayez d'utiliser le tableau pour les accessoires.
Vuejs.org/v2/Guide/Components-props.html# Passer-an-objet j'ai suivi cela dans des objets qui passe
Le type et la valeur par défaut peuvent être définis comme objet
Le problème est que votre accesses code> ne sont pas déclarés correctement.
props: {
user: {
type: String,
default: ''
},
dates: {
type: Object,
default: () => ({})
}
},
Essayez ceci:
watch: { dates: { handler(val){ this.data.order_date = val.order_date; }, deep: true } }
Attribuer les valeurs dans le STRY> Created STRY> ou
J'ai finalement résolu cela avec, j'ai changé de nom de variable afin que je ne sois pas confus. Il semble que vous ayez besoin de mettre des accessoires sous Watch afin de le manipuler.
props: [ 'user','blood_components', 'blood_types', 'current_date'], data() { return { list: { order_date: '', } } }, watch:{ current_date: function() { let self = this self.list.order_date = this.current_date } },
Un peu en retard à la fête mais je pensais que je partagerais ma solution de contournement lorsque vous travaillez avec ASYNC Data:
props: ['initialCounter'], data: function () { return { counter: this.initialCounter } }
Êtes-vous sûr que vous n'écrasez pas
data.order_date code> dans
créé code> ou
monté code> hameçons? Pouvez-vous essayer de définir ce
data.order_date code> sur string "foo" pour vérifier si cela persiste?
J'ai enlevé monté et créé toujours la même chose. Les accessoires fonctionneront dans les modèles lorsque cela est appelé directement, non défini dans le composant.
Veuillez essayer
ordre_date: this.dates.order_date code> dans
monté () code>, il devrait fonctionner.
Comment remplissez-vous l'accessoire? Parce que je pense que l'accessoire est peuplé après que Vue ait été monté, c'est pourquoi il ne reçoit pas la valeur de vos données.