Comment décider entre _init et _create en jQuery UI widget?
Je crois que je comprends la différence entre _create
et _init
widget définitions (voir, par exemple,cette question), mais je ne suis toujours pas certain de la but pour la distinction. Quelles sortes de tâches de configuration aller dans _create()
ou dans _init()
? Ce qui va mal si le widget de l'auteur choisit le mauvais?
Vous devez vous connecter pour publier un commentaire.
À partir de:
Aussi:
Si l'auteur utilise
_init()
quand_create()
doit avoir été codé, le résultat sera que le code de la_init()
sera exécutée une fois par widget de l'instanciation.Réponse courte ici:
_create() sera exécuté lorsque vous exécutez votre jquery-ui plugin pour la première fois, à l'instar de xx$.votre plugin(les options);
_init() sera exécuté première et après la première fois lorsque votre code s'exécute en xx$.votre plugin(les options);
Comme il y a un peu de code dans jquery-ui.custom.js comme ceci:
Donc, si vous dessiner un diagramme avec jquery-ui plugin, après cela, alors vous voulez l'utilisation de nouvelles données à mettre à jour, vous devez le faire _init() pour mettre à jour votre graphique.
Si vous venez de vous afficher quelque chose et de ne pas les mettre à jour totalement, _create() va répondre à vos besoins.