Questions d'entretien de vue sélectionnées (points clés)
Comment V001-vuerouter transmet la valeur
1 Configurez
path:'/detail/:id' 调用: this.$router.push({ path:'/home/${id}' })
au point de routage et transmettez-la dans le. composantthis.$route.params.id
Vous pouvez l'obtenir maintenant.
[Recommandation de sujet] : Résumé des questions d'entretien avec vue frontale 2020 (avec réponses)
Passez-le dans le router-link
paramètre de balise.
<router-link :to = { params:{ id:1 } }/>
peut également être obtenu via : this.$route.params.id
La méthode de transmission des paramètres ici via le lien du routeur est la transmission de paramètres invisibles
3. La méthode Params consiste à transmettre les paramètres via params et à configurer le routage via name.
//路由处: { path:'/home', name:'Home', component:Home } 调用: this.$router.push({ name:'Home', params:{ id:id } })
Get : this.$route.params.id
4. Transmettez les paramètres via la requête, les paramètres seront affichés dans le ?id=? après l'url
//路由处: { path:'/home', name:'Home', component:Home } 调用: this.$router.push({ path:'/home', query:{ id:id } })
Get : this.$route.query.id
Inconvénients et solutions de l'utilisation de V002-v-if et v-for ensemble
Parce que v-for
a une priorité plus élevée que v-if
, cela provoque chaque Chaque boucle ira à v-if une fois, et v-if contrôle l'affichage et le masquage des éléments en créant et en détruisant des éléments dom, de sorte que les éléments seront créés et détruits en continu, provoquant un décalage de page et une dégradation des performances.
Solution :
1. Enveloppez un élément dans la couche externe ou interne de v-for pour utiliser v-if
Utilisation calculée pour traiter
<ul> <li v-for="item in qdleaderArr" v-if="item.isActive" :key="item.id" > {{ item.name }} </li> </ul>
Traité comme :
computed: { qdleaderArrActive: function () { return this.qdleaderArr.filter(function (item) { return item.isActive }) } } <ul> <li v-for="item in qdleaderArrActive" :key="item.id" > {{ item.name }} </li> </ul>
Quelles opérations sont généralement effectuées dans V003-beforeDestory
beforedestoryed est un cycle de vie exécuté avant que le composant ne soit détruit dans ce cycle de vie. , Nous pouvons effacer les fonctions de rappel ou les minuteries
①Dissocier les événements personnalisés event.$off
②Éliminer les minuteries③Dissocier les événements DOM personnalisés tels que window.scroll, etc.
Par exemple, ce scénario : La date doit être stocké lorsque je clique sur la requête, et la mémoire de lecture doit être rafraîchie, mais lorsque je clique sur d'autres pages et que je reviens, cette mémoire doit être effacée
search(){ let time = { start: this.formSearch.beginSearchTime, end: this.formSearch.endSearchTime, timeRange: this.formSearch.timeRange, page: this.formSearch.page } localStorage.setItem('initTime',JSON.stringify(time)) } created () { let searchCarTime = JSON.parse(localStorage.getItem('initTime')) if (searchCarTime) { this.formSearch.beginSearchTime = searchCarTime.start this.formSearch.endSearchTime = searchCarTime.end, this.formSearch.timeRange = searchCarTime.timeRange this.formSearch.page = searchCarTime.page } }, beforeDestroy(){ localStorage.removeItem('initTime') }
V004-Composant similaire passant valeur
1. S'il s'agit d'un composant frère, la valeur peut être transmise via l'élément parent en tant que composant intermédiaire
1.2 $emit
Passer la valeur et recevoir les accessoires
Utilisez $emit pour child1. La valeur de vue est donnée au composant parent, et le composant parent transmet la valeur à child2.vue Child2.vue utilise des accessoires pour recevoir
parent.vue
<🎜. >
<template> <div> <h2>我是父组件</h2> <child1 @handleClickChange="handleClickChangeTitle"></child1> <child2 :ptitle="title"></child2> </div> </template> <script> import child1 from "child1";//文件地址 import child2 from "child2";//文件地址 export default { data() { return { title: "" }; }, components: { child1, child2 }, methods: { handleClickChangeTitle(title){//将改方法传递给child1组件 this.title = title } } } </script>
child1.vue
<template> <div> <h2>我是child1组件</h2> <div> <input type="text"v-model="title"/> <button type="button" @click="handleClickChangeTitle(title)">更改title的值</button> <div>{{title}}</div> </div> </div> </template> <script> export default { data() { return { title: "" }; }, methods: { handleClickChangeTitle(title){ this.$emit("handleClickChange",title)//连接父组件的handleClickChange方法,同时将值传递给父组件 } } } </script>
child2.vue
<template> <div>{{ptitle}}</div> </template> <script> export default { //接收父组件穿过来的值ptitle props:{ptitle:{ type: String}} } </script>
// 创建一个文件,定义bus中间件,并导出 const bus = new Vue() // 在一个组件中发送事件 bus.$emit('事件名称', 传递的参数) // 在另一个组件中监听事件 bus.$on('事件名称', 得到传过来的参数)
import Vue from 'vue' export default new Vue()
, puis transmettez la valeur bus.js
.
<template> <div @click="onfocus"></div> </template> <script> import Bus from '@/bus.js' export default{ methods:{ onfocus:function(fromid){ Bus.$emit('getisshow',{ show:true }) } } } </script>
$emit
à . 3. Dans le composant b du même niveau, recevez <🎜 à >
<script> import Bus from '@/bus.js' export default{ created(){ Bus.$on('getisshow',data => { console.log(data) //{show:true} }) } } </script>
$on
Recommandations d'apprentissage associées : tutoriel vidéo javascript
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

L'article discute de la création, de la publication et du maintien des bibliothèques JavaScript, en se concentrant sur la planification, le développement, les tests, la documentation et les stratégies de promotion.

L'article traite des stratégies pour optimiser les performances JavaScript dans les navigateurs, en nous concentrant sur la réduction du temps d'exécution et la minimisation de l'impact sur la vitesse de chargement de la page.

Des questions et des solutions fréquemment posées pour l'impression de billets thermiques frontaux pour le développement frontal, l'impression de billets est une exigence commune. Cependant, de nombreux développeurs mettent en œuvre ...

L'article traite du débogage efficace de JavaScript à l'aide d'outils de développeur de navigateur, de se concentrer sur la définition des points d'arrêt, de l'utilisation de la console et d'analyser les performances.

L'article explique comment utiliser les cartes source pour déboguer JavaScript minifiée en le mappant au code d'origine. Il discute de l'activation des cartes source, de la définition de points d'arrêt et de l'utilisation d'outils comme Chrome Devtools et WebPack.

Cet article explore une utilisation efficace du cadre de collections de Java. Il met l'accent sur le choix des collections appropriées (liste, set, map, file d'attente) en fonction de la structure des données, des besoins en performances et de la sécurité des threads. Optimisation de l'utilisation de la collection grâce à

Une fois que vous avez maîtrisé le didacticiel TypeScript de niveau d'entrée, vous devriez être en mesure d'écrire votre propre code dans un IDE qui prend en charge TypeScript et de le compiler en JavaScript. Ce tutoriel plongera dans divers types de données dans TypeScript. JavaScript a sept types de données: null, non défini, booléen, numéro, chaîne, symbole (introduit par ES6) et objet. TypeScript définit plus de types sur cette base, et ce tutoriel les couvrira tous en détail. Type de données nuls Comme javascript, null en typeScript

Ce tutoriel expliquera comment créer des graphiques à tarte, anneaux et bulles à l'aide de chart.js. Auparavant, nous avons appris quatre types de graphiques de graphique. Créer des graphiques à tarte et à anneaux Les graphiques à tarte et les graphiques d'anneaux sont idéaux pour montrer les proportions d'un tout divisé en différentes parties. Par exemple, un graphique à secteurs peut être utilisé pour montrer le pourcentage de lions mâles, de lions féminins et de jeunes lions dans un safari, ou le pourcentage de votes que différents candidats reçoivent lors des élections. Les graphiques à tarte ne conviennent que pour comparer des paramètres ou des ensembles de données uniques. Il convient de noter que le graphique à tarte ne peut pas dessiner des entités avec une valeur nulle car l'angle du ventilateur dans le graphique à tarte dépend de la taille numérique du point de données. Cela signifie toute entité avec une proportion nulle
