# Outillage
# Outils à installer
TIP
Si cela respecte votre politique de sécurité locale, il est recommandé de travailler sous une VM Linux, par exemple Dev-Box MTS, pour avoir une meilleure expérience de développement. Toutefois ce n'est pas obligatoire pour cette formation.
# Node.js
Installez Node.js (version 8.x minimum). Si vous devez gérer plusieurs versions différentes de Node.js sur la même machine, vous pouvez utiliser nvm.
# Visual Studio Code et Vetur
Vous aurez besoin d'un bon éditeur de code pour JavaScript lors de cette formation.
Nous vous conseillons Visual Studio Code, un éditeur gratuit assez léger qui est aujourd'hui très populaire dans la communauté JavaScript.
VS Code dispose de nombreuses extensions pour enrichir l'éditeur. Installez l'extension Vetur qui aidera l'éditeur à mieux gérer la syntaxe des fichiers composants *.vue
.
# Vue Devtools
Téléchargez l'extension vue-devtools disponible sur Chrome, Firefox ou en application standalone. Cela vous aidera pour le débogage lors des TP.
# Vue CLI
Maintenant, installons les outils nécessaires au développement de projets Vue.js sur votre machine :
Nous aurons besoin d'installer l'utilitaire en ligne appelé Vue CLI. Cet utilitaire permet de créer et configurer des projets Vue beaucoup plus facilement.
Depuis votre Terminal, lancez la commande suivante pour installer @vue/cli
en dépendance globale
npm install -g @vue/cli
Vous avez désormais accès à la commande vue
depuis un terminal. Essayez-la pour vérifier la bonne installation et pour avoir plus d'informations sur les commandes disponibles :
$ vue
Usage: vue <command> [options]
Options:
-V, --version output the version number
-h, --help output usage information
Commands:
create [options] <app-name> create a new project powered by vue-cli-service
add [options] <plugin> [pluginOptions] install a plugin and invoke its generator in an already created project
invoke [options] <plugin> [pluginOptions] invoke the generator of a plugin in an already created project
inspect [options] [paths...] inspect the webpack config in a project with vue-cli-service
serve [options] [entry] serve a .js or .vue file in development mode with zero config
build [options] [entry] build a .js or .vue file in production mode with zero config
ui [options] start and open the vue-cli ui
init [options] <template> <app-name> generate a project from a remote template (legacy API, requires @vue/cli-init)
config [options] [value] inspect and modify the config
upgrade [semverLevel] upgrade vue cli service / plugins (default semverLevel: minor)
info print debugging information about your environment
Run vue <command> --help for detailed usage of given command.
La commande vue ui
est très utile pour les débutants: elle fournit une interface graphique sur navigateur dédiée à la gestion des projets Vue et aux tâches courantes d'un projet Vue. L'UI peut remplacer la ligne de commande pour de nombreuses tâches, comme par exemple :
- créer ou importer un projet Vue
- ajouter des plug-ins pour plus de fonctionnalités
- configurer l'outillage du projet
- lancer son application
- lancer les tests unitaires
- etc.
# Utilisation de Vue.js sans étape de build (runtime only)
Il est tout à fait possible d'utiliser Vue.js sans tout cet outillage sur le poste de développeur. Vue est à la base une bibliothèque JavaScript qui peut être importée et utilisée directement sur les navigateurs des clients.
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>Hello Vue</title>
<script src="https://unpkg.com/vue"></script>
</head>
<body>
<div id="app">
<h1>Hello {{name}} !</h1>
</div>
<script>
const vm = new Vue({ el: "#app", data: { name: "Vue" } });
</script>
</body>
</html>
Toutefois, ce mode d'utilisation trouve rapidement ses limites, et l'outillage développeur qui accompagne les projets Vue s'avère très précieux avec le temps. Mais cela peut être utile si vous voulez intégrer des composants Vue dans un projet fait avec un autre framework, ou si vous voulez faire un prototype rapide sans devoir installer d'outillage.
# TP : Création de votre premier projet
Placez-vous dans votre répertoire de travail et créez un projet appelé search-films
en lançant la commande :
vue create search-films
search-films étant le nom du répertoire dans lequel nous allons initier notre projet.
Choisissez la configuration suivante :
@vue/cli 4.5.6
? Please pick a preset: Manually select features
? Check the features needed for your project: Babel, Linter, Unit
? Choose a version of Vue.js that you want to start the project with (Use arrow keys): 2.x
? Pick a linter / formatter config: ESLint with error prevention only
? Pick additional lint features: Lint on save
? Pick a unit testing solution: Jest
? Where do you prefer placing config for Babel, PostCSS, ESLint, etc.: In dedicated config files
? Pick the package manager to use when installing dependencies: Use NPM
- Babel est un transpilateur, un outil qui va compiler et convertir votre code afin qu'il soit supporté au mieux par un maximum de navigateurs.
- ESLint est un linter, un outil d'analyse qualité qui va parcourir votre code et vous signaler des erreurs potentielles.
- Jest est un framework de test axé sur la simplicité d'utilisation.
A la fin de l'installation, un dossier a été créé pour votre projet. Naviguez vers le répertoire de votre projet :
cd search-films
# Travailler en mode développeur
Pour travailler sur l'application et la tester en direct, lancez la commande suivante :
npm run serve
Votre application sera alors accessible sur localhost:8080 (port par défaut si disponible).
Dans Visual Studio Code, ouvrez le dossier de votre projet puis naviguez dans les différents fichiers pour vous approprier l'arborescence du projet.
# Build pour la production
Vous pouvez à tout moment packager votre projet pour la production avec la commande :
npm run build
Cette commande compilera votre projet en utilisant Webpack en mode production. Webpack est un bundler, un outil qui va transformer vos sources en un petit nombre de bundles, des fichiers JS et CSS optimisés et compressés, et les mettre dans le dossier /dist
de votre projet. Il ne reste alors plus qu'à déployer ce dossier sur un serveur de fichiers tel que Apache ou Nginx.
TIP
Les commandes de base de Vue CLI sont listées dans le README.md généré à la racine du projet
# Configuration du projet
Vous pouvez configurer votre projet Vue de multiples façons, par exemple en changeant le port utilisé par le serveur de développement. À la racine du projet, créez un fichier vue.config.js
, puis placez-y le contenu suivant :
module.exports = {
devServer: {
port: 3000
}
};
Votre projet sera maintenant accessible sur le port 3000 en mode développeur. Consultez la documentation de configuration pour en savoir plus sur les options disponibles.