Comment construire votre premier package Vue.js et publier sur NPM
Nous allons apprendre à créer notre propre plugin pour Vue.js et à le distribuer sur NPM pour que tout le monde puisse l'utiliser.
Les plugins sont ce qui rend nos vies de développeurs beaucoup plus productives. La plupart de nos projets en dépendent, car ils nous permettent de fournir de nouvelles fonctionnalités avec une grande rapidité.
Comme indiqué dans la documentation officielle de Vue.js il n'y a pas de champ strictement défini pour un plugin. . Il ajoute simplement une fonctionnalité de niveau global à votre projet . Mais ils appartiennent généralement à ces cinq catégories en fonction de ce que nous essayons de réaliser:
- Ajoutez quelques méthodes ou propriétés globales (par exemple, voici ce que Vuex ou vue-router Est-ce que).
- Ajoutez un ou plusieurs actifs globaux (par exemple, une feuille de style avec / ou une bibliothèque JavaScript).
- Ajoutez quelques options de composant par mixin global (par exemple, c'est ce que fait vue-html-to-paper ).
- Ajoutez quelques méthodes d'instance Vue en les attachant à Vue.prototype (par exemple, c'est ce que vue-axios fait).
- Une bibliothèque qui fournit sa propre API, tout en injectant une combinaison de ce qui précède.
Maintenant que vous comprenez à quel point les plugins peuvent être pratiques et à quoi ils peuvent répondre, voyons comment en ajouter un à votre projet. Ensuite, nous allons apprendre à fabriquer le nôtre et à le distribuer sur NPM pour que tout le monde l’utilise (oui, ça va être super amusant!).
Comment ajouter un plugin Vue.js à votre projet.
Pour utiliser votre plugin après l'avoir installé avec npm install
(ou fil ajouter
), vous devez accéder à votre fichier main.js
. C’est le point d’entrée qui pilote notre application Vue. Importez-le et appelez la méthode globale Vue.use ()
. Attention cependant: tous les plugins doivent être instanciés avant de démarrer votre application avec new Vue ()
.
import Vue de "vue" ; [[19659015] import YourPlugin de "yourplugin" ;
Vue . utilisez ( YourPlugin ) ;
new Vue ( {
// [...]
} )
Il existe également un autre moyen d'ajouter un nouveau plugin lorsque l'auteur du package le permet: supprimer le lien CDN dans la balise de script de votre en-tête.
< script src = "https://cdn.jsdelivr.net/npm/yourplugin@latest/lat/dist/yourplugin.min.js">[1965903133005757305730>>19599031(1)voussouhaitezpersonnaliserlecomportementd'unpluginVouspouvezfacilementlefaireenluipassantquelquesoptionslorsquevousappelez Vue.use ()
. Voici comment cela fonctionne:
Vue . utilisez ( YourPlugin {
une option : false
une autre option : false
} )
Par exemple, avec vue-chartist vous pouvez choisir le texte à afficher lorsqu'aucune donnée n'est disponible pour bien tracer le graphique. comme suit:
Vue . utilisez ( VueChartist {
messageNoData : "Vous n’avez pas assez de données"
} ) ;
Revenons maintenant à l’événement principal: construisez ensemble votre premier plug-in Vue.js. 1965
Comment construire votre propre plugin Vue.js à partir de Scratch
Si vous lisez ceci, vous êtes probablement un développeur frontend comme moi. Et comme tout autre développeur frontend, vous adorerez probablement avoir de beaux boutons pour vos interfaces! C’est ce que nous allons construire: un ensemble de jolis boutons que nous pourrons réutiliser. Cela nous fera gagner beaucoup de temps pour les projets futurs!
Étape 1: initialisation de la structure de plug-in
Permet de créer un dossier vide pour notre paquet et d’initialiser NPM. Cela générera un nouveau fichier package.json
. Nous y reviendrons plus tard.
$ mkdir joli-beau-bouton && cd beau-beau-bouton
$ npm init
# La commande ci-dessus crée un nouveau package.json
# Appuyez sur Entrée pour répondre à toutes les questions suivantes
Ajoutez un nouveau dossier appelé src à la racine, dans lequel vous créez un nouveau fichier NiceHandsomeButton .vue
. Vous pouvez rapidement prototyper avec un seul fichier *. Vue
avec les commandes vue serve
et vue build
mais elles nécessitent l'installation préalable d'un addon global supplémentaire. :
npm installez -g @ vue / cli
npm installer -g @ vue / cli-service-global
Maintenant, si vous exécutez:
$ vue serve NiceHandsomeButton.vue
Visitez le site http: // localhost: 8080 /
. Une page vierge devrait apparaître dans votre navigateur. Travaillons maintenant sur notre composant bouton! ????
Pour en savoir plus sur @ vue / cli-service-global, consultez la documentation officielle . Cet ajout est qu'il est très utile pour travailler sur un seul fichier .vue
sans échafaudage d'un projet entier avec vue créer mon-nouveau-projet
.
Étape 2: Travailler sur Notre composant Beau bouton
Modèle
Comme ce didacticiel n’a pas pour objet d’écrire les composants Vue, je pense que vous devez connaître les bases. Le code complet de notre beau bouton est disponible ci-dessous (le modèle, la logique JavaScript et le style). Copiez-le, ouvrez NiceHandsomeButton.vue
et collez le contenu à l'intérieur.
< template >
< button
@click = ] " onClick "
@dblclick = " surDoubleClick "
: classe = " [
' beau-beau-bouton ' ,
' beau-beau-bouton - ' + couleur,
' beau-beau-bouton - ' + taille,
{
' beau-beau-bouton-arrondi ' : arrondi
}
] "
>
< emplacement > </ emplacement >
</ bouton >
</ template >
Nous avons gardé les choses simples, mais voici quelques points à noter:
- J'utilise BEM. Si vous ne le connaissez pas encore, lisez ceci. maintenant: MindBEMding - prenez votre tête autour de la syntaxe BEM .
- J'ai ajouté les accessoires
de couleur
de taille
et arrondis
. Comme leurs noms l'indiquent, ils nous permettront de contrôler la couleur, la taille et de déterminer si notre bouton doit être arrondi ou non.
- J'utilise également un emplacement pour le contenu afin que nous puissions l'utiliser comme un bouton normal
My Button Label
.
JavaScript
Définissons les accessoires que notre composant peut accepter, ainsi que les deux méthodes qui émettront un événement lorsque nous cliquons / double-cliquons dessus.
< script > [19659015] export défaut {
accessoires : {
couleur : {
type : String
défaut : "bleu"
validateur ( x ). {
return [ "blue" "green" "red" ] . indexOf ( x ) ! == - 1 ;
}
}
arrondi : {
type : Boolean
défaut : true
}
taille : {
type : String
défaut : "défaut"
validateur ( x ) {
return [ "petit" "défaut" "grand" ] . indexOf ( x ) ! == - 1 ;
}
}
}
Source link