ホームページ ウェブフロントエンド jsチュートリアル vue.jsプログレッシブフレームワークの使用方法の詳細な説明

vue.jsプログレッシブフレームワークの使用方法の詳細な説明

Apr 17, 2018 pm 02:51 PM
javascript vue.js 特性

今回はvue.jsプログレッシブフレームワークの使い方を詳しく解説します。vue.jsプログレッシブフレームワークの使い方を詳しく解説する際の注意点について、実際の事例を交えて見ていきましょう。

Vue.js は、ユーザー インターフェイスを構築するための進歩的なフレームワークです。他の重量級フレームワークとは異なり、Vue は 基本的には最小限のコストで段階的に採用可能な設計を採用します。ヴュー コア ライブラリはビュー レイヤーのみに焦点を当てており、他のサードパーティ ライブラリや既存のプロジェクトと簡単に統合できます。一方、Vue エコシステムによってサポートされる単一ファイルのコンポーネントおよびライブラリと組み合わせると、Vue また、複雑な単一ページ アプリケーションに強力なドライバーを提供する機能も備えています。

Vue.js は 2.x に更新され、機能と構文にいくつかのアップグレードと変更が加えられています。この記事では、まず基本的な内容を紹介します。

1、初心者ガイド

vue の使用方法は非常に簡単です。vue.js または vue.min.js をダウンロードして直接インポートします。

2. vue を使い始める

2.1 宣言的レンダリング

Vue.js の中核は、簡潔なテンプレート構文を使用して宣言的にデータを DOM にレンダリングできることです。 これで「Hello Vue!」と入力されます。

最初の Vue アプリケーションを生成しました。これは文字列テンプレートのレンダリングに非常によく似ていますが、Vue は舞台裏で多くの作業を行います。今はデータとDOM すでに結合されているため、すべてのデータと DOM はリアクティブです。これらすべてを明確に理解するにはどうすればよいでしょうか?ブラウザでJavaScriptをオンにするだけです コンソール (現在のページで開いています) を開き、app.message の値を設定すると、上記の例でレンダリングされた DOM 要素がそれに応じて更新されることがわかります。

テキスト補間に加えて、次の方法で DOM 要素属性をバインドすることもできます:

<p id="app">
 {{ message }}
</p>
var app = new Vue({
 el: '#app',
 data: {
 message: 'Hello Vue!'
 }
})
ログイン後にコピー

マウスを数秒間ホバーすると、動的なプロンプトが表示されます。

ここで私たちは新しいものに出会う。表示される v-bind 属性はディレクティブと呼ばれます。ディレクティブには、Vue によって生成されたことを示すために v- という接頭辞が付けられます。 特別なプロパティが提供されます。ご想像のとおり、レンダリングされた DOM 上で特殊なリアクティブな動作が生成されます。つまり、このディレクティブがここで行うことは、「この要素の title 属性を次のものと一致させる」ということです。 Vue インスタンスのメッセージ プロパティは関連性を維持し、更新されます。"

ブラウザの JavaScript コンソールを再度開き、 app2.message = 'Some new message' と入力すると、title 属性にバインドされた HTML が更新されたことが再度わかります。

2.1 条件とループ

要素の表示の制御も非常に簡単です:

<p id="app-2">
 <span v-bind:title="message">
 鼠标悬停此处几秒,
 可以看到此处动态绑定的 title!
 </span>
</p>
var app2 = new Vue({
 el: '#app-2',
 data: {
 message: '页面加载于 ' + new Date().toLocaleString()  }
})
ログイン後にコピー

^コンソールで「app3.seen = false」と入力し続けると、span が消えていることが確認できます。

この例は、

データ

をテキストとプロパティにバインドできるだけでなく、DOM 構造にもバインドできることを示しています。さらに、Vue は強力な Transition Effect システムも提供しており、Vue が要素を挿入/更新/削除するときに自動的にトランジション エフェクトを使用できます。 他にもコマンドがあり、それぞれに特殊な機能があります。たとえば、v-for ディレクティブは配列内のデータを使用して項目のリストを表示できます:

<p id="app-3">
 <p v-if="seen">现在你可以看到我</p>
</p>
var app3 = new Vue({
 el: '#app-3',
 data: {
 seen: true
 }
})
ログイン後にコピー

3、vueインスタンス すべての Vue アプリケーションは、Vue 関数を通じて新しい Vue インスタンスを作成することから始まります:

<p id="app-4">
 <ol>
 <li v-for="todo in todos">
  {{ todo.text }}
 </li>
 </ol>
</p>
var app4 = new Vue({
 el: '#app-4',
 data: {
 todos: [
  { text: '学习 JavaScript' },
  { text: '学习 Vue' },
  { text: '创建激动人心的代码' }
 ]
 }
})
ログイン後にコピー

Vue の設計は MVVM パターンに完全に従っているわけではありませんが、依然として MVVM パターンからインスピレーションを得ています。慣例として、通常は変数 vm (ViewModel の略) を使用して Vue インスタンスを表します。

3.1データとメソッド

Vue インスタンスを作成すると、データ オブジェクト内にあるすべてのプロパティが Vue のリアクティブ システムに追加されます。これらのプロパティの値が変更されるたびに、ビューは「応答」し、対応する新しい値で更新されます。

りー

データ オブジェクトが変更されるたびに、ビューの再レンダリングがトリガーされます。インスタンスが作成されている場合、データ内にすでに存在するプロパティのみがリアクティブになることに注意してください。つまり、インスタンスの作成後に新しい属性を追加した場合、たとえば次のようになります。

vm.b = 'hi'
ログイン後にコピー

  然后,修改 b 不会触发任何视图更新。如果你已经提前知道,之后将会用到一个开始是空的或不存在的属性,你就需要预先设置一些初始值。例如:

data: {
 newTodoText: '',
 visitCount: 0,
 hideCompletedTodos: false,
 todos: [],
 error: null
}
ログイン後にコピー

  除了 data 属性, Vue 实例还暴露了一些有用的实例属性和方法。这些属性与方法都具有前缀 $,以便与用户定义(user-defined)的属性有所区分。例如:

var data = { a: 1 }
var vm = new Vue({
 el: '#example',
 data: data
})
vm.$data === data // => true
vm.$el === document.getElementById('example') // => true
// $watch 是一个实例方法
vm.$watch('a', function (newValue, oldValue) {
 // 此回调函数将在 `vm.a` 改变后调用
})
ログイン後にコピー

3.2vue实例的声明周期

  vue实例的声明周期是一个很重要的概念,理解之后可以通过它实现很多功能。

  看下这段代码。

<!DOCTYPE html>
<html>
 <head>
  <meta charset="UTF-8">
  <title></title>
 </head>
 <body>
  <p id="container">我的声明周期,大家看吧!</p>
 </body>
 <script type="text/javascript" src="js/jquery-3.1.1.min.js" ></script>
 <script type="text/javascript" src="js/vue.js" ></script>
 <script type="text/javascript">
  //以下代码时显示vm整个生命周期的流程
  var vm = new Vue({
   el: "#container",
   data: {
    test : 'hello world'
   },
   beforeCreate: function(){
    console.log(this);
    showData('创建vue实例前',this);
   },
   created: function(){
    showData('创建vue实例后',this);
   },
   beforeMount:function(){
    showData('挂载到dom前',this);
   },
   mounted: function(){
    showData('挂载到dom后',this);
   },
   beforeUpdate:function(){
    showData('数据变化更新前',this);
   },
   updated:function(){
    showData('数据变化更新后',this);
   },
   beforeDestroy:function(){
    vm.test ="3333";
    showData('vue实例销毁前',this);
   },
   destroyed:function(){
    showData('vue实例销毁后',this);
   }
  });
  function realDom(){
   console.log('真实dom结构:' + document.getElementById('container').innerHTML);
  }
  function showData(process,obj){
   console.log(process);
   console.log('data 数据:' + obj.test)
   console.log('挂载的对象:')
   console.log(obj.$el)
   realDom();
   console.log('------------------')
   console.log('------------------')
  }
 </script>
</html>
ログイン後にコピー

  通过控制台的打印效果可以看出来,实例化 vue 对象大致分为 创建vue实例、挂载到dom、数据变化更新、vue实例销毁 4个阶段,,注意每个阶段都有对应的钩子,我们可以通过对这些钩子进行操作,达成一些功能。虽然初学者用不太上,但是提前了解一下还是好的,到时候碰到实际功能要能想得到生命周期的钩子。         

相信看了本文案例你已经掌握了方法,更多精彩请关注php中文网其它相关文章!

推荐阅读:

ajax与jsonp的使用详解

Vue 2.0内部指令

前端开发中的多列布局实现方法

以上がvue.jsプログレッシブフレームワークの使用方法の詳細な説明の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

Spring MVC の主要な概念をマスターする: これらの重要な機能を理解する Spring MVC の主要な概念をマスターする: これらの重要な機能を理解する Dec 29, 2023 am 09:14 AM

SpringMVC の主要な機能を理解する: これらの重要な概念を習得するには、特定のコード例が必要です。 SpringMVC は、開発者が Model-View-Controller (MVC) アーキテクチャ パターンを通じて柔軟でスケーラブルな構造を構築するのに役立つ Java ベースの Web アプリケーション開発フレームワークです。ウェブアプリケーション。 SpringMVC の主要な機能を理解して習得すると、Web アプリケーションをより効率的に開発および管理できるようになります。この記事では、SpringMVC の重要な概念をいくつか紹介します。

簡単な JavaScript チュートリアル: HTTP ステータス コードを取得する方法 簡単な JavaScript チュートリアル: HTTP ステータス コードを取得する方法 Jan 05, 2024 pm 06:08 PM

JavaScript チュートリアル: HTTP ステータス コードを取得する方法、特定のコード例が必要です 序文: Web 開発では、サーバーとのデータ対話が頻繁に発生します。サーバーと通信するとき、多くの場合、返された HTTP ステータス コードを取得して操作が成功したかどうかを判断し、さまざまなステータス コードに基づいて対応する処理を実行する必要があります。この記事では、JavaScript を使用して HTTP ステータス コードを取得する方法を説明し、いくつかの実用的なコード例を示します。 XMLHttpRequestの使用

ニーズと機能に基づいて、該当する Go バージョンを選択してください ニーズと機能に基づいて、該当する Go バージョンを選択してください Jan 20, 2024 am 09:28 AM

インターネットの急速な発展に伴い、プログラミング言語は常に進化し、更新されています。中でもGo言語はオープンソースのプログラミング言語として近年注目を集めています。 Go 言語は、シンプル、効率的、安全で、開発とデプロイが簡単になるように設計されています。高い同時実行性、高速なコンパイル、メモリの安全性などの特徴を備えており、Web開発、クラウドコンピューティング、ビッグデータなどの分野で広く使用されています。ただし、現在、Go 言語のさまざまなバージョンが利用可能です。適切な Go 言語バージョンを選択するときは、要件と機能の両方を考慮する必要があります。頭

Golang にはクラスのようなオブジェクト指向機能はありますか? Golang にはクラスのようなオブジェクト指向機能はありますか? Mar 19, 2024 pm 02:51 PM

Golang (Go 言語) には伝統的な意味でのクラスの概念はありませんが、構造体と呼ばれるデータ型が提供され、これによってクラスと同様のオブジェクト指向機能を実現できます。この記事では、構造体を使用してオブジェクト指向機能を実装する方法を説明し、具体的なコード例を示します。構造体の定義と使用法 まず、構造体の定義と使用法を見てみましょう。 Golang では、type キーワードを通じて構造を定義し、必要に応じて使用できます。構造には属性を含めることができます

JavaScript で HTTP ステータス コードを簡単に取得する方法 JavaScript で HTTP ステータス コードを簡単に取得する方法 Jan 05, 2024 pm 01:37 PM

JavaScript で HTTP ステータス コードを取得する方法の紹介: フロントエンド開発では、バックエンド インターフェイスとの対話を処理する必要があることが多く、HTTP ステータス コードはその非常に重要な部分です。 HTTP ステータス コードを理解して取得すると、インターフェイスから返されたデータをより適切に処理できるようになります。この記事では、JavaScript を使用して HTTP ステータス コードを取得する方法と、具体的なコード例を紹介します。 1. HTTP ステータス コードとは何ですか? HTTP ステータス コードとは、ブラウザがサーバーへのリクエストを開始したときに、サービスが

C++ 関数の種類と特性 C++ 関数の種類と特性 Apr 11, 2024 pm 03:30 PM

C++ 関数には、単純関数、const 関数、静的関数、および仮想関数というタイプがあり、インライン関数、デフォルト パラメーター、参照戻り値、およびオーバーロードされた関数などの機能が含まれます。たとえば、calculateArea 関数は π を使用して、指定された半径の円の面積を計算し、それを出力として返します。

Vue.jsは学ぶのが難しいですか? Vue.jsは学ぶのが難しいですか? Apr 04, 2025 am 12:02 AM

Vue.jsは、特にJavaScriptファンデーションを持つ開発者にとって、学ぶのは難しくありません。 1)その進歩的な設計とレスポンシブシステムは、開発プロセスを簡素化します。 2)コンポーネントベースの開発により、コード管理がより効率的になります。 3)使用例は、基本的および高度な使用法を示しています。 4)一般的なエラーは、vuedevtoolsを介してデバッグできます。 5)V-IF/V-Showや重要な属性を使用するなど、パフォーマンスの最適化とベストプラクティスは、アプリケーションの効率を向上させることができます。

VUEはフロントエンドまたはバックエンドに使用されていますか? VUEはフロントエンドまたはバックエンドに使用されていますか? Apr 03, 2025 am 12:07 AM

Vue.jsは、主にフロントエンド開発に使用されます。 1)ユーザーインターフェイスとシングルページアプリケーションの構築に焦点を当てた軽量で柔軟なJavaScriptフレームワークです。 2)Vue.jsのコアはその応答性データシステムであり、データが変更されるとビューは自動的に更新されます。 3)コンポーネントの開発をサポートし、UIを独立した再利用可能なコンポーネントに分割できます。

See all articles