Heim > Web-Frontend > View.js > Hauptteil

Was sind die grundlegendsten Funktionen des vue.js-Kerns?

王林
Freigeben: 2021-10-08 14:56:39
Original
3209 Leute haben es durchsucht

Die grundlegendste Funktion des vue.js-Kerns ist ein System, das die deklarative Darstellung von Daten im DOM mithilfe einer prägnanten Vorlagensyntax ermöglicht. Die Kernfunktion von vue.js ermöglicht es uns, einfach zu steuern, ob ein Element angezeigt wird oder nicht.

Was sind die grundlegendsten Funktionen des vue.js-Kerns?

Die Betriebsumgebung dieses Artikels: Windows 10-System, Vue 2.5.2, Thinkpad T480-Computer.

Im Kern ist Vue.js ein System, das die deklarative Darstellung von Daten im DOM mithilfe einer prägnanten Vorlagensyntax ermöglicht.

Lassen Sie uns unten einen genaueren Blick darauf werfen.

<div id="app">
  {{ message }}
</div>
Nach dem Login kopieren
var app = new Vue({
  el: &#39;#app&#39;,
  data: {
    message: &#39;Hello Vue!&#39;
  }
})
Nach dem Login kopieren

Zusätzlich zur Textinterpolation können wir auch Elementeigenschaften wie diesen binden:

<div id="app-2">
  <span v-bind:title="message">
    鼠标悬停几秒钟查看此处动态绑定的提示信息!
  </span>
</div>
Nach dem Login kopieren
var app2 = new Vue({
  el: &#39;#app-2&#39;,
  data: {
    message: &#39;页面加载于 &#39; + new Date().toLocaleString()
  }
})
Nach dem Login kopieren

Es ist auch ganz einfach zu steuern, ob ein Element angezeigt wird oder nicht:

<div id="app-3">
  <p v-if="seen">现在你看到我了</p>
</div>
Nach dem Login kopieren
var app3 = new Vue({
  el: &#39;#app-3&#39;,
  data: {
    seen: true
  }
})
Nach dem Login kopieren

Es gibt viele andere Befehle, jeder mit speziellen Funktionen. Beispielsweise kann die v-for-Direktive die Daten eines Arrays binden, um eine Liste von Elementen darzustellen:

<div id="app-4">
  <ol>
    <li v-for="todo in todos">
      {{ todo.text }}
    </li>
  </ol>
</div>
Nach dem Login kopieren
var app4 = new Vue({
  el: &#39;#app-4&#39;,
  data: {
    todos: [
      { text: &#39;学习 JavaScript&#39; },
      { text: &#39;学习 Vue&#39; },
      { text: &#39;整个牛项目&#39; }
    ]
  }
})
Nach dem Login kopieren

Um Benutzern die Interaktion mit Ihrer Anwendung zu ermöglichen, können wir die v-on-Direktive verwenden, um einen Ereignis-Listener hinzuzufügen und ihn aufzurufen auf der Vue-Instanz Methoden definiert in:

<div id="app-5">
  <p>{{ message }}</p>
  <button v-on:click="reverseMessage">逆转消息</button>
</div>
Nach dem Login kopieren
var app5 = new Vue({
  el: &#39;#app-5&#39;,
  data: {
    message: &#39;Hello Vue.js!&#39;
  },
  methods: {
    reverseMessage: function () {
      this.message = this.message.split(&#39;&#39;).reverse().join(&#39;&#39;)
    }
  }
})
Nach dem Login kopieren

Vue stellt auch die V-Model-Direktive bereit, mit der problemlos eine bidirektionale Bindung zwischen Formulareingabe und Anwendungsstatus erreicht werden kann.

<div id="app-6">
  <p>{{ message }}</p>
  <input v-model="message">
</div>
Nach dem Login kopieren
var app6 = new Vue({
  el: &#39;#app-6&#39;,
  data: {
    message: &#39;Hello Vue!&#39;
  }
})
Nach dem Login kopieren

Das Komponentensystem ist ein weiteres wichtiges Konzept von Vue, da es eine Abstraktion ist, die es uns ermöglicht, große Anwendungen mit kleinen, unabhängigen und oft wiederverwendbaren Komponenten zu erstellen. Wenn man genau darüber nachdenkt, kann fast jede Art von Anwendungsschnittstelle in einen Komponentenbaum abstrahiert werden:

Was sind die grundlegendsten Funktionen des vue.js-Kerns?

In Vue ist eine Komponente im Wesentlichen eine Vue-Instanz mit vordefinierten Optionen. Das Registrieren einer Komponente in Vue ist einfach:

// 定义名为 todo-item 的新组件
Vue.component(&#39;todo-item&#39;, {
  template: &#39;<li>这是个待办项</li>&#39;
})
Nach dem Login kopieren

Jetzt können Sie damit eine weitere Komponentenvorlage erstellen:

<ol>
  <!-- 创建一个 todo-item 组件的实例 -->
  <todo-item></todo-item>
</ol>
Nach dem Login kopieren

Aber dadurch wird für jedes Aufgabenelement derselbe Text gerendert, was nicht cool aussieht. Wir sollten in der Lage sein, Daten vom übergeordneten Bereich an die untergeordnete Komponente zu übergeben. Ändern wir die Komponentendefinition, um eine Requisite zu akzeptieren:

Vue.component(&#39;todo-item&#39;, {
 // todo-item 组件现在接受一个
 // "prop",类似于一个自定义特性。
 // 这个 prop 名为 todo。
 props: [&#39;todo&#39;],
 template: &#39;<li>{{ todo.text }}</li>&#39;
})
Nach dem Login kopieren

Jetzt können wir die v-bind-Direktive verwenden, um die Aufgabenelemente an jede Komponente der Schleifenausgabe zu übergeben:

<div id="app-7">
  <ol>
    <!--
      现在我们为每个 todo-item 提供 todo 对象
      todo 对象是变量,即其内容可以是动态的。
      我们也需要为每个组件提供一个“key”,稍后再
      作详细解释。
    -->
    <todo-item v-for="item in groceryList" v-bind:todo="item" ></todo-item>
  </ol>
</div>
Nach dem Login kopieren
Vue.component(&#39;todo-item&#39;, {
  props: [&#39;todo&#39;],
  template: &#39;<li>{{ todo.text }}</li>&#39;
})

var app7 = new Vue({
  el: &#39;#app-7&#39;,
  data: {
    groceryList: [
      { id: 0, text: &#39;蔬菜&#39; },
      { id: 1, text: &#39;奶酪&#39; },
      { id: 2, text: &#39;随便其它什么人吃的东西&#39; }
    ]
  }
})
Nach dem Login kopieren

Was sind die grundlegendsten Funktionen des vue.js-Kerns?

Lernempfehlungen: php-Training

Das obige ist der detaillierte Inhalt vonWas sind die grundlegendsten Funktionen des vue.js-Kerns?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage