Ich baue eine Vue-Anwendung mit Vuex, und ich kann nicht den folgenden Code zu arbeiten (kurz bearbeitet, inspiriert von this blog post).Laravel + Vuex: Objekt/Argument Destrukturierung funktioniert nicht
// File: views/Board.vue
export default {
methods: {
updateProp (prop, value) {
console.log(prop, value) // Outputs prop and value
this.$store.commit('board/updateProp', {
[prop]: value
})
}
},
// ...
}
Und in meinem (benannt) Vuex Modul:
// File: vuex/modules/board.js
export default {
mutations: {
updateProp (state, { prop, value }) {
console.log(prop, value) // Outputs 'undefined undefined'
}
},
// ...
}
Da import { something } from 'somewhere'
funktioniert gut, ich bin geneigt Objekt Destrukturierung zu glauben funktioniert. Ich bin nur verblüfft, warum mein Code nicht funktioniert.
Ich habe auch eine .babelrc
Datei mit den folgenden erstellt und installiert die entsprechenden Plugins und Presets, aber ohne Erfolg.
{
"plugins": [
"transform-es2015-destructuring",
"transform-object-rest-spread"
],
"presets": [
["es2015", { "modules": false }]
]
}
Hilfe sehr geschätzt.
Es kann nicht die Antwort sein, warum mein Code nicht funktioniert (was für schien zu arbeiten wer auch immer den Blogbeitrag geschrieben hat), aber Ihre Vorschläge _does_ funktionieren für mich und fühlen sich genauso elegant, wenn nicht noch mehr. Vielen Dank! – oscaralexander
Awesome, froh, dass ich Ihnen helfen konnte! –