Propriété app.config.compilerOptions de Vue3
app.config.compilerOptionsIl s'agit d'une option de configuration importante qui permet aux développeurs de contrôler finement le comportement de compilation des applications Vue.
app.config.compilerOptionsest un objet utilisé pour configurer le comportement du compilateur dans Vue 3. Il appartient à l'instance d'application Vue (app) de l'objet de configuration (config), utilisé spécifiquement pour contrôler le comportement lors de la compilation de template. En définissant ces options, les développeurs peuvent ajuster le comportement du compilateur de Vue pour répondre à des besoins spécifiques.
Options de configuration courantes
Les suivantes sontapp.config.compilerOptionsquelques options de configuration couramment utilisées dans :
1. isCustomElement
- Objectif: Permet de spécifier quels éléments doivent être traités comme des éléments personnalisés (plutôt que comme des composants Vue).
- Scénario d'application: Lorsque vous utilisez des éléments personnalisés tiers (tels que des Web Components) dans votre modèle, vous devez les marquer comme éléments personnalisés afin d'empêcher le compilateur Vue de les traiter comme des composants Vue inconnus.
- Exemple:
Le code ci-dessus traitera toutes les balises commençant par
Exemple
app.config.compilerOptions.isCustomElement = (tag) => tag.startsWith('my-');
my-comme des éléments personnalisés.
2. whitespace
- Objectif: Contrôle la manière dont les caractères d'espacement dans les modèles sont gérés.
- Valeurs facultatives:
'preserve': Conserver tous les caractères d'espacement.'condense': Compresser les caractères d'espacement en un seul espace.'collapse': Supprimer tous les caractères d'espacement redondants.
- Exemple:
Le code ci-dessus compressera les caractères d'espacement dans le template en un seul espace.
Exemple
app.config.compilerOptions.whitespace = 'condense';
3. delimiters
- Objectif: Modifier les délimiteurs des expressions d'interpolation dans les templates.
- Valeur par défaut:
['{{', '}}'] - Scénario d'application: Lorsque vous devez éviter des conflits de syntaxe avec d'autres moteurs de template (comme Django ou Jinja2), vous pouvez modifier les délimiteurs d'interpolation.
- Exemple:
Le code ci-dessus changera les expressions d'interpolation de
Exemple
app.config.compilerOptions.delimiters = ['${', '}'];
{{ }}à${ }。
4. comments
- Objectif: Contrôle si les commentaires HTML dans les templates sont conservés.
- Valeur par défaut:
false(Ne pas conserver les commentaires) - Exemple:
Le code ci-dessus conservera les commentaires HTML dans le template.
Exemple
app.config.compilerOptions.comments = true;
Comment utiliser app.config.compilerOptions ?
L'exemple d'utilisation complet suivant montre comment configurerapp.config.compilerOptions:
Exemple
import App from './App.vue';
const app = createApp(App);
// Configurer compilerOptions
app.config.compilerOptions = {
isCustomElement: (tag) => tag.startsWith('my-'),
whitespace: 'condense',
delimiters: ['${', '}'],
comments: true,
};
app.mount('#app');
Dans le code ci-dessus :
- Traiter toutes les balises commençant par
my-comme des éléments personnalisés. - Compresser les caractères d'espacement dans le modèle en un seul espace.
- Modifier les délimiteurs des expressions d'interpolation en
${ }。 - Préserver les commentaires HTML dans le template.
Notes
- S'applique uniquement à la compilation des templates:
app.config.compilerOptionsAffecte uniquement le comportement de compilation des templates Vue et n'affecte pas le code JavaScript. - Modifier les délimiteurs avec prudence: Lors de la modification des délimiteurs des expressions d'interpolation, assurez-vous qu'il n'y a pas de conflit de syntaxe avec d'autres moteurs de template ou frameworks.
- Compatibilité des éléments personnalisés: Lors de l'utilisation de
isCustomElementvous devez vous assurer que la définition et l'utilisation des éléments personnalisés sont compatibles avec Vue.
Autres extensions
Vue3 API globale