Heim Web-Frontend js-Tutorial So wenden Sie die Vue-Dateibaumkomponente an

So wenden Sie die Vue-Dateibaumkomponente an

Jun 12, 2018 pm 02:31 PM
vue组件

Dieses Mal zeige ich Ihnen, wie Sie die Vue-Dateibaumkomponente anwenden und welche Vorsichtsmaßnahmen für die Verwendung der Vue-Dateibaumkomponente gelten. Das Folgende ist ein praktischer Fall, schauen wir uns das an.

Zuerst ist die HTML-Vorlage:

<li>
  <p
   //文件夹加粗表示
   :class="{bold: isFolder}" 
   //处理单击事件 打开闭合文件列表            
   @click="toggle"  
   //处理双击事件 双击子文件,子文件属性变为文件夹               
   @dblclick="changeType">  
   //显示文件名      
   {{model.name}}
  //若是文件夹的话则显示[+]来控制文件夹的开关闭合
   <span v-if="isFolder">[{{open ? '-' : '+'}}]</span>
  </p>
  <ul v-show="open" v-if="isFolder">
  //利用v-for显示子文件列表,通过递归使用item组件来完成文件树
   <item
   class="item"
   v-for="model in model.children"
   :model="model">
   </item>
   //增加一个+标记,单击可以增加子文件
   <li class="add" @click="addChild">+</li>
  </ul>
</li>
Nach dem Login kopieren

Als nächstes ist der Quellcode des Komponententeils:

Vue.component('item', {
 template: '#item-template',
 props: {
 model: Object //将文件数据通过props传入
 },
 data: function () {
 return {
  open: false  //open表示文件夹闭合状态
 }
 },
 computed: {
 isFolder: function () {
  return this.model.children &&
  this.model.children.length
 }
 }, //计算对象是否有子节点并且子节点数大于0来判断是否是文件夹
 methods: {
 toggle: function () {
  if (this.isFolder) {
  this.open = !this.open
  }
 },    //控制文件夹闭合的方法 单击触发改变open
 changeType: function () {
  if (!this.isFolder) {
  Vue.set(this.model, 'children', [])
  this.addChild()
  this.open = true
  }
 }, //双击触发,通过给文件增加子节点来使文件属性变成文件夹
 addChild: function () {
  this.model.children.push({
  name: 'new stuff'
  })  //点击文件夹里的+节点触发 为文件夹添加一个新文件
 }   
 }
})
Nach dem Login kopieren

Die Designidee besteht also darin, zu bestimmen, ob das Objekt untergeordnete Knoten hat Bestimmen Sie, ob es sich um einen Ordner oder eine Datei handelt, und verwenden Sie dann rekursiv die Komponente , um die Auswirkung des Dateibaums anzuzeigen.

Schließlich das Datenformat der eingehenden Komponente:

var data = {
 name: 'My Tree',
 children: [
 { name: 'hello' },
 { name: 'wat' },
 {
  name: 'child folder',
  children: [
  {
   name: 'child folder',
   children: [
   { name: 'hello' },
   { name: 'wat' }
   ]
  },
  { name: 'hello' },
  { name: 'wat' },
  {
   name: 'child folder',
   children: [
   { name: 'hello' },
   { name: 'wat' }
   ]
  }
  ]
 }
 ]
}
Nach dem Login kopieren

Ich glaube, dass Sie die Methode beherrschen, nachdem Sie den Fall in diesem Artikel gelesen haben. Weitere spannende Informationen finden Sie in anderen verwandten Artikeln auf der chinesischen PHP-Website!

Empfohlene Lektüre:

So verwenden Sie die Kommunikation mit gemeinsam genutzten Angular4-Komponenten

Verwenden Sie Postman + Json + Springmvc, um Batch-Ergänzungen vorzunehmen

Das obige ist der detaillierte Inhalt vonSo wenden Sie die Vue-Dateibaumkomponente an. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

Video Face Swap

Video Face Swap

Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Vue-Praxis: Entwicklung von Datumsauswahlkomponenten Vue-Praxis: Entwicklung von Datumsauswahlkomponenten Nov 24, 2023 am 09:03 AM

Vue Practical Combat: Datumsauswahl-Komponentenentwicklung Einführung: Die Datumsauswahl ist eine Komponente, die häufig in der täglichen Entwicklung verwendet wird. Sie kann Daten einfach auswählen und bietet verschiedene Konfigurationsoptionen. In diesem Artikel wird erläutert, wie Sie mit dem Vue-Framework eine einfache Datumsauswahlkomponente entwickeln und spezifische Codebeispiele bereitstellen. 1. Anforderungsanalyse Vor Beginn der Entwicklung müssen wir eine Anforderungsanalyse durchführen, um die Funktionen und Eigenschaften der Komponenten zu klären. Gemäß den allgemeinen Funktionen der Datumsauswahlkomponente müssen wir die folgenden Funktionspunkte implementieren: Grundfunktionen: können Daten auswählen und

Vue-Komponentenkommunikation: Verwenden Sie $destroy für die Kommunikation zur Komponentenzerstörung Vue-Komponentenkommunikation: Verwenden Sie $destroy für die Kommunikation zur Komponentenzerstörung Jul 09, 2023 pm 07:52 PM

Vue-Komponentenkommunikation: Verwenden Sie $destroy für die Kommunikation zur Komponentenzerstörung. In der Vue-Entwicklung ist die Komponentenkommunikation ein sehr wichtiger Aspekt. Vue bietet verschiedene Möglichkeiten zur Implementierung der Komponentenkommunikation, z. B. Requisiten, Emit, Vuex usw. In diesem Artikel wird eine weitere Methode der Komponentenkommunikation vorgestellt: die Verwendung von $destroy für die Kommunikation zur Komponentenzerstörung. In Vue verfügt jede Komponente über einen Lebenszyklus, der eine Reihe von Lebenszyklus-Hook-Funktionen umfasst. Die Zerstörung von Komponenten gehört ebenfalls dazu

Wie implementiert Vue die Wiederverwendung und Erweiterung von Komponenten? Wie implementiert Vue die Wiederverwendung und Erweiterung von Komponenten? Jun 27, 2023 am 10:22 AM

Mit der kontinuierlichen Weiterentwicklung der Front-End-Technologie hat sich Vue zu einem der beliebtesten Frameworks in der Front-End-Entwicklung entwickelt. In Vue sind Komponenten eines der Kernkonzepte, mit denen Seiten in kleinere, besser verwaltbare Teile zerlegt werden können, wodurch die Entwicklungseffizienz und die Wiederverwendbarkeit des Codes verbessert werden. Dieser Artikel konzentriert sich darauf, wie Vue die Wiederverwendung und Erweiterung von Komponenten implementiert. 1. Vue-Komponenten-Wiederverwendungs-Mixins Mixins sind eine Möglichkeit, Komponentenoptionen in Vue zu teilen. Mit Mixins können Komponentenoptionen aus mehreren Komponenten optimal zu einem einzigen Objekt kombiniert werden

Vue-Komponentenkommunikation: Verwendung von Watch und Computing zur Datenüberwachung Vue-Komponentenkommunikation: Verwendung von Watch und Computing zur Datenüberwachung Jul 10, 2023 am 09:21 AM

Vue-Komponentenkommunikation: Verwendung von Watch und Compute zur Datenüberwachung Vue.js ist ein beliebtes JavaScript-Framework, dessen Kernidee die Komponentisierung ist. In einer Vue-Anwendung müssen Daten zwischen verschiedenen Komponenten übertragen und kommuniziert werden. In diesem Artikel stellen wir vor, wie man Vues Watch und Computing zum Überwachen und Reagieren auf Daten verwendet. watch In Vue ist watch eine Option, mit der Änderungen in einer oder mehreren Eigenschaften überwacht werden können.

So verwenden Sie Bibliotheken von Drittanbietern in Vue-Projekten So verwenden Sie Bibliotheken von Drittanbietern in Vue-Projekten Oct 15, 2023 pm 04:10 PM

Vue ist ein beliebtes JavaScript-Framework, das eine Fülle von Tools und Funktionen bietet, die uns beim Erstellen moderner Webanwendungen unterstützen. Obwohl Vue selbst bereits viele praktische Funktionen bietet, müssen wir manchmal Bibliotheken von Drittanbietern verwenden, um die Fähigkeiten von Vue zu erweitern. In diesem Artikel wird die Verwendung von Bibliotheken von Drittanbietern in Vue-Projekten vorgestellt und spezifische Codebeispiele bereitgestellt. 1. Bibliotheken von Drittanbietern einführen Der erste Schritt zur Verwendung von Bibliotheken von Drittanbietern in einem Vue-Projekt besteht darin, sie einzuführen. Wir können es auf folgende Weise einführen

Umfassendes Verständnis des Komponentenlebenszyklus von Vue Umfassendes Verständnis des Komponentenlebenszyklus von Vue Oct 15, 2023 am 09:07 AM

Um den Komponentenlebenszyklus von Vue genau zu verstehen, benötigen Sie spezifische Codebeispiele. Einführung: Vue.js ist ein fortschrittliches JavaScript-Framework, das von Entwicklern wegen seiner Einfachheit, einfachen Erlernbarkeit, Effizienz und Flexibilität bevorzugt wird. Bei der Komponentenentwicklung von Vue ist das Verständnis des Lebenszyklus von Komponenten ein wichtiger Teil. Dieser Artikel befasst sich mit dem Lebenszyklus von Vue-Komponenten und stellt spezifische Codebeispiele bereit, um den Lesern zu helfen, diese besser zu verstehen und anzuwenden. 1. Lebenszyklusdiagramm von Vue-Komponenten Der Lebenszyklus von Vue-Komponenten kann als Komponenten betrachtet werden

Entwicklung von Vue-Komponenten: Implementierungsmethode für Registerkartenkomponenten Entwicklung von Vue-Komponenten: Implementierungsmethode für Registerkartenkomponenten Nov 24, 2023 am 08:41 AM

Entwicklung von Vue-Komponenten: Implementierungsmethode für Tab-Komponenten In modernen Webanwendungen ist die Tab-Seite (Tab) eine weit verbreitete UI-Komponente. Die Tab-Komponente kann mehrere verwandte Inhalte auf einer einzigen Seite anzeigen und diese durch Klicken auf die Registerkarte wechseln. In diesem Artikel stellen wir vor, wie man mit Vue.js eine einfache Tab-Komponente implementiert, und stellen detaillierte Codebeispiele bereit. Die Struktur der Vue-Tab-Komponente besteht normalerweise aus zwei Teilen: Tab und Panel. Etiketten werden zur Kennzeichnung von Oberflächen verwendet

So wechseln Sie zwischen mehreren Dateninteraktionsmethoden in Vue-Komponenten So wechseln Sie zwischen mehreren Dateninteraktionsmethoden in Vue-Komponenten Oct 08, 2023 am 11:37 AM

So wechseln Sie zwischen mehreren Dateninteraktionsmethoden in Vue-Komponenten. Bei der Entwicklung von Vue-Komponenten stoßen Sie häufig auf Szenarien, in denen Sie zu verschiedenen Dateninteraktionsmethoden wechseln müssen, z. B. zum Anfordern von Daten über APIs, zum Eingeben von Daten über Formulare oder zum Übertragen von Daten in Echtzeit über WebSocket usw. . In diesem Artikel wird erläutert, wie dieser Wechsel mehrerer Dateninteraktionsmethoden in Vue-Komponenten implementiert wird, und es werden spezifische Codebeispiele bereitgestellt. Methode 1: API-Anforderungsdaten In einigen Fällen müssen wir Daten über die API anfordern, um Hintergrunddaten zu erhalten. unter

See all articles