ForgeTotal.js 5
el

Total.js 5

Αλυσίδωση πολλών ενεργειών σε μία διαδρομή

Total.js 5 · total5@0.0.19 actionsrouting Εκτελέστηκε με το Total.js 5

Μια διαδρομή μπορεί να εκτελέσει περισσότερες από μία ενέργειες: γράψτε τες η μία μετά την άλλη μετά το -->. Εκτελούνται με τη σειρά, όλες παίρνουν το ίδιο payload και το πρώτο σφάλμα σταματά την αλυσίδα. Προσθέστε (response) μετά την ενέργεια της οποίας το αποτέλεσμα πρέπει να σταλεί· χωρίς αυτό, απαντά η τελευταία ενέργεια.

definitions/order.js
NEWACTION('Order/validate', {
	name: 'Validate the order',
	input: '*product:String, *quantity:Number',
	action: function($, model) {
		model.quantity > 0 ? $.success() : $.invalid('quantity');
	}
});

NEWACTION('Order/save', {
	name: 'Save the order',
	input: '*product:String, *quantity:Number',
	action: function($, model) {
		$.callback({ id: 'order-1', product: model.product, quantity: model.quantity });
	}
});
controllers/order.js
exports.install = function() {
	ROUTE('POST /order/ --> *Order/validate *Order/save (response)');
};