Επέκταση συστατικών και plugins με EXTENSION
Το EXTENSION(name, config, callback) προσθέτει κώδικα σε κάθε παρουσία του συστατικού name (ή του plugin @name) όταν δημιουργείται. Το callback παίρνει την παρουσία και το config της, ακριβώς όπως μια δήλωση, ώστε να μπορείτε να προσθέσετε μεθόδους, να αλλάξετε επιλογές ή να ακούσετε events. Έτσι μια εφαρμογή προσαρμόζει συστατικά τρίτων χωρίς fork.
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>jComponent</title>
<link rel="stylesheet" href="//cdn.componentator.com/spa.min@20.css" />
<script src="//cdn.componentator.com/spa.min@20.js"></script>
</head>
<body>
<ui-component name="label" config="text:Hello"></ui-component>
<script>
COMPONENT('label', 'text:', function(self, config) {
self.make = function() {
self.html('<span></span>');
self.find('span').text(config.text);
};
});
EXTENSION('label', 'suffix:!', function(self, config) {
self.shout = function() {
self.find('span').text(config.text.toUpperCase() + config.suffix);
};
self.extended = true;
});
</script>
</body>
</html> Δοκιμάστε το στον browser σας
Επεξεργαστείτε το παράδειγμα και εκτελέστε το. Εκτελείται σε απομονωμένο πλαίσιο στον browser σας· τίποτα δεν στέλνεται στον διακομιστή μας.
Προεπισκόπηση