mirror of
https://github.com/wailsapp/wails.git
synced 2025-05-02 14:10:25 +08:00
98 lines
4.1 KiB
Plaintext
98 lines
4.1 KiB
Plaintext
# Templates
|
|
|
|
Wails génère des projets à partir de modèles pré-créés. Dans la v1, c'était difficile de maintenir un ensemble de projets pour qu'ils restent toujours à jour. Dans v2, pour augmenter l'impact de la communauté sur le projet, quelques nouvelles fonctionnalités ont été ajoutées pour les modèles :
|
|
|
|
- Possibilité de générer des projets à partir de [Modèles à distance](../reference/cli.mdx#remote-templates)
|
|
- Outils pour aider à créer vos propres modèles
|
|
|
|
## Création de modèles
|
|
|
|
Pour créer un modèle, vous pouvez utiliser la commande `wails generate template`. Pour générer un modèle par défaut, exécutez :
|
|
|
|
`wails generate template -name mytemplate`
|
|
|
|
Cela crée le répertoire "mytemplate" avec les fichiers par défaut :
|
|
|
|
```shell title=mytemplate/
|
|
.
|
|
|-- NEXTSTEPS.md
|
|
|-- README.md
|
|
|-- app.tmpl.go
|
|
|-- frontend
|
|
| `-- dist
|
|
| |-- assets
|
|
| | |-- fonts
|
|
| | | |-- OFL.txt
|
|
| | | `-- nunito-v16-latin-regular.woff2
|
|
| | `-- images
|
|
| | `-- logo-dark.svg
|
|
| |-- index.html
|
|
| |-- main.css
|
|
| `-- main.js
|
|
|-- go.mod.tmpl
|
|
|-- main.tmpl.go
|
|
|-- template.json
|
|
`-- wails.tmpl.json
|
|
```
|
|
|
|
### Vue d'ensemble du modèle
|
|
|
|
Le modèle par défaut consiste en l'ensemble des fichiers et répertoires suivants :
|
|
|
|
| Nom du fichier / dossier | Description |
|
|
| ------------------------ | ------------------------------------------------ |
|
|
| NEXTSTEPS.md | Instructions sur la façon de compléter le modèle |
|
|
| README.md | Le README publié avec le modèle |
|
|
| app.tmpl.go | Fichier modèle `app.go` |
|
|
| frontend/ | Le répertoire contenant les assets du frontend |
|
|
| go.mod.tmpl | Fichier modèle `go.mod` |
|
|
| main.tmpl.go | Fichier modèle `main.go` |
|
|
| template.json | Template des metadonnées du projet |
|
|
| wails.tmpl.json | Fichier modèle `wails.json` |
|
|
|
|
À ce stade, il est conseillé de suivre les étapes dans `NEXTSTEPS.md`.
|
|
|
|
## Créer un modèle à partir d'un projet existant
|
|
|
|
Il est possible de créer un modèle à partir d'un projet frontend déjà existant, en passant le chemin du projet lors de la génération du template. Nous allons maintenant parcourir comment créer un modèle Vue 3 :
|
|
|
|
- Installez le CLI Vue: `npm install -g @vue/cli`
|
|
- Créer le projet par défaut : `vue create vue3-base`
|
|
- Sélectionnez `Default (Vue 3) ([Vue 3] babel, eslint)`
|
|
- Une fois le projet généré, exécutez :
|
|
|
|
```shell
|
|
> wails generate template -name wails-vue3-template -frontend .\vue3-base\
|
|
Extracting base template files...
|
|
Migrating existing project files to frontend directory...
|
|
Updating package.json data...
|
|
Renaming package.json -> package.tmpl.json...
|
|
Updating package-lock.json data...
|
|
Renaming package-lock.json -> package-lock.tmpl.json...
|
|
```
|
|
|
|
- Le modèle peut maintenant être personnalisé comme spécifié dans le fichier `NEXTSTEPS.md`
|
|
- Une fois les fichiers prêts, il peut être testé en exécutant : `wails init -n my-vue3-project -t .\wails-vue3-template\`
|
|
- Pour tester le nouveau projet, exécutez : `cd my-vue3-project` puis `wails build`
|
|
- Une fois que le projet est compilé, exécutez-le : `.\build\bin\my-vue3-project.exe`
|
|
- Vous devriez avoir une application Vue3 pleinement fonctionnelle :
|
|
|
|
```mdx-code-block
|
|
<div className="text--center">
|
|
<img
|
|
src={require("@site/static/img/vue3-template.png").default}
|
|
width="50%"
|
|
/>
|
|
</div>
|
|
```
|
|
|
|
## Publication de modèles
|
|
|
|
Pour publier un modèle, il vous faut simplement pousser les fichiers dans GitHub. Les bonnes pratiques suivantes sont encouragées :
|
|
|
|
- Supprimer tous les fichiers et répertoires indésirables (comme `.git`) de votre répertoire frontend
|
|
- Assurez-vous que le fichier `template.json` est complet, spécifiquement `helpurl`.
|
|
- Envoyer les fichiers vers GitHub
|
|
- Créez un PR sur la page [Community Templates](../community/templates.mdx)
|
|
- Annoncer le modèle sur le forum de discussion [Template Announcement](https://github.com/wailsapp/wails/discussions/825)
|