亚洲国产日韩欧美一区二区三区,精品亚洲国产成人av在线,国产99视频精品免视看7,99国产精品久久久久久久成人热,欧美日韩亚洲国产综合乱

目次
Vueの「行動の範(fàn)囲」を定義します
DOMで要素を見つけます
フォーム変數(shù)の読み取りと書き込み
ajaxを使用します
完全な(少し些細(xì)な)例
jQueryはなくなりました、Vueは永遠(yuǎn)に続きます!

JQueryからVueへの移動を行います

Apr 21, 2025 am 09:34 AM

JQueryからVueへの移動を行います

jqueryを長い間使用しており、最近VUEに変わった開発者は、両方の移行プロセスに興味があるかもしれません。

まず第一に、私は明確である必要があります、私はあなたがjqueryをあきらめることをお勧めしません。この聲明は現(xiàn)在人気がありますが、私は數(shù)年前に同様の記事を自分で書きました(「どのように(jqueryを使用しないか))。 jQueryがニーズを満たすことができ、エンドユーザーがあなたのウェブサイトをスムーズに使用できる場合は、それを使用し続けます。

このガイドは、主にJQueryを使用して長年の経験があり、Vueで同じタスクを達(dá)成する方法を?qū)Wびたい開発者向けです。ですから、私はjQueryの「コア」ユースケースだと思うものに焦點を當(dāng)てます。私はすべての可能な機(jī)能をカバーするわけではありませんが、代わりに「私はjqueryで[x]をしばしばします」というアプローチを取ります。 (ところで、私が例を書く方法は、タスクを達(dá)成するための単なる方法であることに注意してください。JQueryとVueの両方が同じ目標(biāo)を達(dá)成するための複數(shù)の方法を提供しています。これは良いことです?。?/p>

それでは、jQueryに頼るかもしれないいくつかの高度なタスクを考えてみましょう。

  • DOM內(nèi)の要素を見つける(後でそれらを操作する)
  • DOMのコンテンツを変更します(たとえば、段落のテキストまたはボタンのクラス)
  • フォーム値を読み取り、設(shè)定します
  • フォーム検証(実際には上記の単なる組み合わせ)
  • Ajaxの呼び出しと処理結(jié)果
  • イベント処理(たとえば、ボタンがクリックされたときにアクションを?qū)g行します)
  • 要素のスタイルを測定または変更します

もちろん、jQueryにはそれ以上のものがありますが、これらの使用は(少なくとも私の意見では)最も一般的なユースケースをカバーしています。また、上記のリストには多くの相互相関があることに注意してください。それでは、各機(jī)能を1つずつ比較することから始めるべきですか?いいえ、心配しないでください。最初にVUEアプリケーションの主な違いを紹介しましょう。

Vueの「行動の範(fàn)囲」を定義します

ページにjQueryを追加すると、実際にJavaScriptコードにスイスアーミーナイフを追加して、一般的なWeb開発タスクを処理します。適切だと思われる任意の順序で、あらゆるユースケースを?qū)g行できます。たとえば、顧客は今日フォーム検証を必要とする場合があり、その後、約1か月で、Ajaxベースの検索フォームをWebサイトのヘッダーに追加するように依頼する場合があります。

Vueはこの點で大きな違いがあります。 VUEプロジェクトを開始するとき、最初にDOMで焦點を當(dāng)てたい「地域」を定義します。それでは、単純なプロトタイプのWebページを考えてみましょう。

<header>
  派手なヘッダーコンテンツ</header>
<div id="sidebar">
  いくつかのサイドバーコンテンツ</div>

<main>
  <p id="main-content">
    メインのウェブサイトコンテンツ、非常に重要なコンテンツ...
  </p>
  <div id="loginForm">
    もちろん、ログインフォームもあります</div>
</main>

典型的なjQueryアプリケーションでは、ヘッダー、サイドバー、ログインフォームなどを処理するコードを作成する場合があります。大したことはありません。

 $(document).ready(function(){

  $( 'header')//何かをします...

  $( '#SideBar')//何かをします...

  $( '#loginform')//何かをします...

});

VUEアプリケーションでは、最初に何を処理するかを指定します。クライアントが最初にログインフォーム要素に検証を追加するように要求するとします。私たちのVueコードはこれを指定します:

新しいVue({
  EL: '#LoginForm'、
  //コードはここにあります...
});

これは、顧客が後でサイドバーに何かを追加することを決定した場合、通常、 2番目のVUEアプリケーションを追加することを意味します。

新しいVue({
  EL: '#LoginForm'、
  //コードはここにあります...
});

新しいVue({
  EL: '#sidebar'、
  //コードはここにあります...
});

これは悪いことですか?絶対にそうではありません。すぐにパッケージングのメリットを獲得しました。誤って共通名の変數(shù)を使用している場合(私たち全員がしました)、コードの他の部分と矛盾することを心配する必要はありません。顧客が後で別のリクエストを追加したら、このようなユニークで論理的なVUEコードのセットを分離して、お互いに干渉することを保証できるようにします。

だから、これは良いことです。しかし、私が最初にVueを使い始めたとき、それは私に一時停止を與えました。それでは、ユースケースを見てみましょう。

DOMで要素を見つけます

あなたが見つけるもう1つの興味深いまたは恐ろしい側(cè)面は、「DOMで要素を見つける」方法です。これは少しあいまいですが、特定の例を考えてみましょう。ボタンがあり、クリックすると何かが起こります。ここに簡略化された例があります:

<button id="myButton">私をクリックしてください!</button>
 $(document).ready(function(){

  $( '#mybutton')。クリック(function(){
    アラート(1);
  });

});

それでは、Vueがどのように実裝するかと比較しましょう。

<div id="app">
  <button>私をクリックしてください!</button>
</div>
const app = new Vue({
  EL: '#app'、
  方法:{
    DOSOMTHING:function(){
      アラート(1);
    }
  }
});

VUEアプリケーションは冗長ですが、タグと呼び出される関數(shù)間で操作を直接接続する方法(「クリック」)をどのように接続するかに注意してください。 Vueのコードには、DOMとの関連性はありません(ELパーツを除き、機(jī)能する必要がある場所を定義します)。それは私にヴェーについて最も確信してくれたものの1つです。何が起こっているのかを理解する方が簡単です。また、ID値とセレクターについてあまり心配する必要はありません。ボタンのクラスまたはIDを変更した場合、コードに戻ってセレクターの更新を心配する必要はありません。

別の例を考えてみましょう:DOMのテキストを見つけて変更します。ボタンをクリックした後、DOMの別の部分のテキストが変更されるようになると想像してください。

<button id="myButton">私をクリックしてください!</button>
$(document).ready(function(){

  $( '#mybutton')。クリック(function(){
    $( '#result')。テキスト( '私をクリックしました、ありがとう!');
  });

});

新しいスパンを追加しましたが、ボタンをクリックすると、別のセレクターを使用してそれを見つけ、jQueryユーティリティメソッドを使用して內(nèi)部のテキストを変更します。次に、Vueバージョンを検討してください。

<div id="app">
  <button>私をクリックしてください!</button>
  <span>{{resterText}}</span>
</div>
const app = new Vue({
  EL: '#app'、
  データ: {
    結(jié)果テキスト: ''
  }、
  方法:{
    DOSOMTHING:function(){
      this.resultText = 'あなたは私をクリックしました、ありがとう! ';
    }
  }
});

この例では、VUEのテンプレート言語(強(qiáng)調(diào)表示された行)を使用して、スパン內(nèi)で変數(shù)をレンダリングすることを指定します。これで、ボタンがクリックされると、値が変更され、スパンの內(nèi)部テキストが自動的に変更されます。

ちなみに、Vueはv-on屬性の略語をサポートするため、例のボタンは @click = "dosomething"に置き換えることができます。

フォーム変數(shù)の読み取りと書き込み

処理フォームは、おそらくJavaScriptでできる最も一般的で有用なことの1つです。 JavaScriptの前でさえ、私の初期の「Web開発」のほとんどは、フォームの提出を処理するためにPerlスクリプトを作成していました。ユーザー入力を受け入れる主要な方法として、フォームはWebにとって重要であり、かなり長い間當(dāng)てはまる可能性があります。いくつかのフォームフィールドを読み取り、別のフィールドを設(shè)定する簡単なjQueryの例を考えてみましょう。


=

2つのフィルターと2つのDivを備えたフォームがあります。 1つは、エラーを検索または報告する際に一時的な狀態(tài)として使用され、もう1つは結(jié)果をレンダリングするために使用されます。次に、コードを確認(rèn)してください。

 // ...(コードが長すぎる、ここでは省略)...

このコードは、最初に使用したい各DOMプロジェクト(フォームフィールド、ボタン、およびDiv)の変數(shù)のセットを作成します。ロジックのコアは、ボタンのクリックハンドラーにあります。確認(rèn)し、すべてが機(jī)能する場合は、APIにリクエストを投稿します。それが戻ったとき、一致がない場合、結(jié)果をレンダリングするか、メッセージを表示します。

それでは、Vueバージョンを考えてみましょう。繰り返しますが、レイアウトから始めましょう。

<div id="app">
  <form>
    <p>
      <label for="search">検索</label>
      <input type="text" v-model="search" id="search">
    </p>
    <p>
      <label for="category">カテゴリ</label>
      <select v-model="category" id="category">
        <option value="">全て</option>
        <option value="Food">食べ物</option>
        <option value="Games">ゲーム</option>
      </select>
    </p>
    <button :disabled="searchBtnDisabled">検索</button>
  </form>

  <div v-html="status"></div>
  <ul v-if="results"><li v-for="result in results">{{result.name}}</li></ul>
</div>

上から始めて、変更には次のものが含まれます。

  • Vueがどこで働くべきかを知るように、レイアウトをDivに包みます。
  • フォームフィールドにV-Modelを使用して、データを簡単に処理します。
  • @click.preventを使用して、メイン検索操作を処理します。
  • 使用:無効にして、ボタンの無効狀態(tài)をVUEアプリケーションの値にバインドします(後で何をするかを確認(rèn)します)。
  • ステータス値は、前の例とはわずかに異なります。 jQueryには、DOMプロジェクトにテキストを設(shè)定する特定の方法とHTMLの別の方法がありますが、VUEは、レンダリングする値にHTMLを割り當(dāng)てるときにV-HTMLを使用する必要があります。 {{{status}}をHTMLで使用しようとすると、タグが漏れます。
  • 最後に、V-Forで條件付きでレンダリングされたV-IFを使用して反復(fù)が処理されます。

それでは、コードを見てみましょう。

 // ...(コードが長すぎる、ここでは省略)...

言及する価値のある最初のコードブロックは、データフィールドのセットです。フィールドを形成するためにマップするものもあれば、結(jié)果、ステータスメッセージなどにマッピングされます。SearchProductsメソッドは、jQueryバージョンと同じもののほとんどを処理しますが、一般に、DOMに直接結(jié)合するコードははるかに少なくなります。たとえば、結(jié)果が順序付けられていないリストにリストされていることがわかっていても、コード自體はこれについて気にしません。単に値を割り當(dāng)てるだけで、タグはそれをレンダリングする責(zé)任があります。全體として、JavaScriptコードはjQueryコードよりもロジックに焦點を當(dāng)てており、懸念のより良い分離を「感じています」。

jQueryはなくなりました、Vueは永遠(yuǎn)に続きます!

わかりました、それは少し誇張されています。私が最初に言ったように、あなたがjqueryを使用したいのなら、それがあなたのために働いているなら、私はあなたが何も変えるべきであるとは絶対に考えていません。

しかし、VueはjQueryの使用に慣れている人々にとって良い「次のステップ」のように感じていると言えます。 Vueは複雑なアプリケーションをサポートし、足場と構(gòu)築プロジェクトのための強(qiáng)力なコマンドラインツールを持っています。しかし、より簡単なタスクのために、Vueは優(yōu)れた「モダンなjQuery」の代替品としての私の頼りになる開発ツールになりました!

以上がJQueryからVueへの移動を行いますの詳細(xì)內(nèi)容です。詳細(xì)については、PHP 中國語 Web サイトの他の関連記事を參照してください。

このウェブサイトの聲明
この記事の內(nèi)容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰屬します。このサイトは、それに相當(dāng)する法的責(zé)任を負(fù)いません。盜作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡(luò)ください。

ホットAIツール

Undress AI Tool

Undress AI Tool

脫衣畫像を無料で

Undresser.AI Undress

Undresser.AI Undress

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

AI Clothes Remover

AI Clothes Remover

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

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

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

SublimeText3 中國語版

SublimeText3 中國語版

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

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強(qiáng)力な PHP 統(tǒng)合開発環(huán)境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

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

ロードスピナーとアニメーションを作成するためのCSSチュートリアル ロードスピナーとアニメーションを作成するためのCSSチュートリアル Jul 07, 2025 am 12:07 AM

CSSロード回転子を作成するには3つの方法があります。1。境界の基本回転子を使用して、HTMLとCSSを介してシンプルなアニメーションを?qū)g現(xiàn)します。 2。複數(shù)のポイントのカスタム回転子を使用して、異なる遅延時間を経てジャンプ効果を?qū)g現(xiàn)します。 3.ボタンに回転子を追加し、JavaScriptを介してクラスを切り替えて、読み込みステータスを表示します。各アプローチは、ユーザーエクスペリエンスを向上させるために、色、サイズ、アクセシビリティ、パフォーマンスの最適化などのデザインの詳細(xì)の重要性を強(qiáng)調(diào)しています。

CSSブラウザの互換性の問題とプレフィックスに対処します CSSブラウザの互換性の問題とプレフィックスに対処します Jul 07, 2025 am 01:44 AM

CSSブラウザの互換性とプレフィックスの問題に対処するには、ブラウザサポートの違いを理解し、ベンダーのプレフィックスを合理的に使用する必要があります。 1. FlexBoxやグリッドのサポート、位置:粘著性の無効、アニメーションのパフォーマンスなどの一般的な問題を理解することは異なります。 2. CANIUSE確認(rèn)機(jī)能サポートステータスを確認(rèn)します。 3. -webkit-、-moz-、-ms-、-o-およびその他のメーカーのプレフィックスを正しく使用します。 4.自動的にプレフィックスを追加するためにAutoprefixerを使用することをお勧めします。 5. PostCSSをインストールし、ターゲットブラウザを指定するようにBrowserSlistを構(gòu)成します。 6.建設(shè)中の互換性を自動的に処理します。 7. Modernizr検出機(jī)能は、古いプロジェクトに使用できます。 8.すべてのブラウザの一貫性を追求する必要はありません、

CSSクリップパスでカスタムシェイプを作成します CSSクリップパスでカスタムシェイプを作成します Jul 09, 2025 am 01:29 AM

CSSのクリップパス屬性を作物要素に使用して、寫真やSVGに依存することなく、三角形、円形ノッチ、ポリゴンなどのカスタム形狀になります。その利點には、次のものが含まれます。1。円、楕円、ポリゴンなどのさまざまな基本的な形狀をサポートします。 2。レスポンシブ調(diào)整とモバイル端子に適応可能。 3.アニメーションが簡単で、HoverまたはJavaScriptと組み合わせて動的効果を?qū)g現(xiàn)できます。 4.レイアウトフローには影響せず、ディスプレイエリアのみを収穫します。一般的な使用法は、円形のクリップパス:円(50pxatcenter)および三角クリップパス:ポリゴン(50%0%、100 0%、0 0%)などです。知らせ

ディスプレイの違いは何ですか:インライン、ディスプレイ:ブロック、ディスプレイ:インラインブロック? ディスプレイの違いは何ですか:インライン、ディスプレイ:ブロック、ディスプレイ:インラインブロック? Jul 11, 2025 am 03:25 AM

Themaindifferencesbetweendisplay:インライン、ブロック、およびinline-blockinhtml/cssarelayoutbehavior、spaceusage、andstylingcontrol.1.inlineelementsflowwithtext、notstartonnewlines、nagrorewidth/height、height、andonlyhorizo??ntalpadddddddddddddddding

スタイリングは、CSSとは異なるリンクを訪問しました スタイリングは、CSSとは異なるリンクを訪問しました Jul 11, 2025 am 03:26 AM

アクセスしたリンクのスタイルを設(shè)定すると、特にコンテンツ集約型のWebサイトでユーザーエクスペリエンスを向上させることができ、ユーザーがより良いナビゲートを支援します。 1。CSSを使用してください:訪問した擬似クラスは、色の変化などの訪問されたリンクのスタイルを定義します。 2。ブラウザは、プライバシーの制限により、いくつかの屬性の変更のみを許可することに注意してください。 3.突然の狀態(tài)を避けるために、色の選択は全體的なスタイルと調(diào)整する必要があります。 4.モバイル端子はこの効果を表示しない場合があり、アイコン補助ロゴなどの他の視覚的なプロンプトと組み合わせることをお勧めします。

CSSを使用して応答性のある畫像を作成する方法は? CSSを使用して応答性のある畫像を作成する方法は? Jul 15, 2025 am 01:10 AM

CSSを使用してレスポンシブ畫像を作成するには、主に次の方法で達(dá)成できます。1。最大幅を使用してください:100%と高さ:自動化して、割合を維持しながら畫像がコンテナ幅に適応できるようにします。 2。HTMLのSRCSETおよびサイズの屬性を使用して、異なる畫面に適合した畫像ソースをインテリジェントにロードします。 3.オブジェクトフィットとオブジェクトポジションを使用して、畫像のトリミングとフォーカスディスプレイを制御します。一緒に、これらの方法により、畫像がさまざまなデバイスで明確かつ美しく表示されるようになります。

CSSユニットの分解:PX、EM、REM、VW、VH比較 CSSユニットの分解:PX、EM、REM、VW、VH比較 Jul 08, 2025 am 02:16 AM

CSSユニットの選択は、設(shè)計要件と応答性の要件に依存します。 1.PXは固定サイズに使用され、正確な制御に適していますが、弾力性の欠如に適しています。 2.EMは相対単位であり、親要素の影響によって簡単に引き起こされますが、REMはルート要素に基づいてより安定しており、グローバルなスケーリングに適しています。 3.VW/VHは、レスポンシブデザインに適したビューポートサイズに基づいていますが、極端な畫面の下でのパフォーマンスに注意を払う必要があります。 4.選択するときは、応答性の調(diào)整、要素階層関係、ビューポートの依存関係に基づいて決定する必要があります。合理的な使用は、レイアウトの柔軟性とメンテナンスを改善できます。

一般的なCSSブラウザの矛盾とは何ですか? 一般的なCSSブラウザの矛盾とは何ですか? Jul 26, 2025 am 07:04 AM

さまざまなブラウザのCSS解析に違いがあるため、主にデフォルトのスタイルの違い、ボックスモデルの計算方法、フレックスボックスおよびグリッドレイアウトサポートレベル、および特定のCSS屬性の一貫性のない動作を含む一貫性のないディスプレイ効果が得られます。 1.デフォルトのスタイル処理は一貫性がありません。解決策は、cssresetまたはremormize.cssを使用して初期スタイルを統(tǒng)合することです。 2。IEの古いバージョンのボックスモデル計算方法は異なります。 Box-Sizing:Border-Boxを統(tǒng)一された方法で使用することをお勧めします。 3. FlexBoxとグリッドは、エッジの場合や古いバージョンでは異なる機(jī)能を示します。より多くのテストを行い、Autoprefixerを使用します。 4.一部のCSS屬性の動作は一貫性がありません。 Caniuseは相談して格下げする必要があります。

See all articles