مرحبًا ، أنا مرتبك قليلاً بشأن vm.$dispatch
لأنني توقعت أنه سيعيد القيم من رد اتصال المستمع لمزيد من المنطق الذي لا يمكن وضعه في رد الاتصال _ (imo) _ ولكن اتضح أنه ال مثال ذلك النفس. أنا أتعلم Vue وربما فاتني شيء.
var vm = new Vue({
// omitted
events: {
'object:creating' : function (args) {
// omitted
return false;
},
'object:created' : function (args) {
// omitted
}
}
});
var child = new Vue({
parent: vm,
// omitted
methods: {
performWhatever: function (args) {
//
},
createObject: function (args) {
// Pre-create
if ( this.$dispatch('object:creating', args) === false ) {
// Stop the creation
}
// The business logic
this.performWhatever(args);
// Post-create
this.$dispatch('object:created', args);
}
}
})
كما ترى ، فإن عملية الإنشاء المسبق اختيارية.
شكرا لك.
SomeAsyncCode === false
$dispatch
تمرير وسيطات متعددة بما في ذلك وظيفة رد الاتصال.this.$dispatch('object:creating', args, function() {
// The business logic
this.performWhatever(args);
})
وعلى جانب المتلقي ،
events: {
'object:creating' : function (args, callback) {
// Do something with args and fire callback (or not)
callback()
}
}
شكرا fnlctrl على الشرح :)
fnlctrl شكرا لك على
التعليق الأكثر فائدة
SomeAsyncCode === false
$dispatch
تمرير وسيطات متعددة بما في ذلك وظيفة رد الاتصال.وعلى جانب المتلقي ،