検索

Vue は、フロントエンド開発で広く使用されているオープンソースの JavaScript フレームワークです。インターネットの普及とWebサイトの機能の充実に伴い、ユーザーニーズはますます高くなり、Webサイトへのログイン機能はあらゆるWebサイトに欠かせない機能となっています。この記事では、Vueにログイン機能を実装する手順と方法を紹介します。

1. 前提知識

この記事で使用する必要がある知識ポイント:

Vue-cli3 を使用してプロジェクトをビルドする

Vue-router 、ページ ルーティング管理に使用されます

Vuex、状態管理に使用されます

Axios、ページ内の非同期リクエスト データに使用されます

2. プロジェクトの初期化

1インストール Vue-cli3

Vue-cli3 は Vue.js の公式スキャフォールディング ツールで、Vue プロジェクトを迅速に初期化するのに役立ちます。コマンド ライン ウィンドウに次のコマンドを入力します:

npm install -g @vue/cli

2. プロジェクトを作成します

コマンド ライン ウィンドウに次のコマンドを入力します:

vue create login

ここで、login はプロジェクトです。必要に応じて名前を変更します。次に、プロジェクトに必要なプラグイン、プリセット構成など、いくつかの構成項目を選択するよう求められますが、ここでは説明しません。

3. プロジェクトを開始します

コマンド ライン ウィンドウに次のコマンドを入力します:

cd login
npm run serve

4. ルートとページを作成します

src ディレクトリに、新しい 1 つのルーター ディレクトリを作成し、そのルーター ディレクトリにindex.js ファイルを作成します。 VueRouter インスタンスの構成とルーティング ルールを Index.js ファイルに書き込み、ルーティング インスタンスをエクスポートします。

import Vue from 'vue'
import VueRouter from 'vue-router'
Vue.use(VueRouter)

import Login from '@/views/Login.vue'

const routes = [
  {
    path: '/login',
    name: 'login',
    component: Login
  }
]

const router = new VueRouter({
  mode: 'history',
  routes
})

export default router

上記のコードはログイン ページの Vue コンポーネントを定義しており、パスは /login です。次に、src/views ディレクトリに新しい Login.vue ファイルを作成する必要があります。このファイルは、ログイン ページの実際のコンポーネントです。

<template>
  <div>
    <form>
      <h2 id="Login-Form">Login Form</h2>
      <div>
        <label>Email address:</label>
        <input>
      </div>
      <div>
        <label>Password:</label>
        <input>
      </div>
      <button>Submit</button>
    </form>
  </div>
</template>

<script>

export default {
  data () {
    return {
      email: &#39;&#39;,
      password: &#39;&#39;
    }
  },
  methods: {
    submit () {
      // 处理表单提交
    }
  }
}

</script>

3. ログイン関数の実装

ログイン ページ Login.vue で、フォームの送信イベントをバインドし、ユーザーが入力したユーザー名とパスワードを取得する必要があります。次に、Ajax リクエストをバックグラウンドに送信し、ログイン プロセスを完了します。 Axios は、Ajax リクエストの送信に使用できる強力な JavaScript HTTP クライアント ライブラリです。

1. Axios をインストールします

コマンド ライン ウィンドウに次のコマンドを入力します:

npm install axios

2. ログイン ロジックを作成します

Login.vue で送信します。ファイルメソッドに次のコードを追加します。

submit () {
  axios.post('/api/login', {
    email: this.email,
    password: this.password
  })
  .then(response => {
    console.log(response.data)
    // 处理登录成功逻辑
  })
  .catch(error => {
    console.log(error)
    // 处理登录失败逻辑
  })
}

その中で、Axios を介して /api/login インターフェイスに post リクエストを送信します。ここでのアドレスは実際の状況に応じて変更する必要があります。バックグラウンドに送信されるデータは、ユーザーが入力ボックスに入力したユーザー名とパスワードであり、ログインの成功と失敗のロジックが処理されます。このうち、ログインに成功すると、状態管理のためにユーザー情報をVuexに保存できます。

3. 状態管理に Vuex を使用する

src ディレクトリに新しいストア ディレクトリを作成し、そのストア ディレクトリ内に Vuex の機能構成用の Index.js ファイルを作成します。

import Vue from 'vue'
import Vuex from 'vuex'
Vue.use(Vuex)

const state = {
  user: null
}

const mutations = {
  setUser (state, user) {
    state.user = user
  }
}

const actions = {
  setUser ({ commit }, user) {
    commit('setUser', user)
  }
}

const store = new Vuex.Store({
  state,
  mutations,
  actions
})

export default store

このうち、userの初期値はnullに設定されています。ミューテーションの setUser メソッドは、ユーザーの状態を変更するために使用されます。アクションの setUser メソッドは、ミューテーションで setUser メソッドを送信するために使用されます。

Login.vue の submit メソッドでは、ログインが成功したら、アクションで setUser メソッドを呼び出して、Vuex にユーザー情報を保存する必要があります。

submit () {
  axios.post('/api/login', {
    email: this.email,
    password: this.password
  })
  .then(response => {
    console.log(response.data)
    const user = response.data.user
    if (user) {
      this.$store.dispatch('setUser', user)
      this.$router.push('/')
    }
  })
  .catch(error => {
    console.log(error)
  })
}

4. まとめ

これまでで、Vue のログイン機能の開発は完了しました。 Vue を使用してページを開発すると、コード全体がよりエレガントになり、保守が容易になります。さらに、状態管理に Vuex を使用すると、コンポーネントによるデータの使用と管理がより便利になり、コードがより読みやすく、保守しやすくなります。この機能は比較的単純であるため、バックエンド関連の処理は省略されており、バックエンドのログインやフロントエンドとバックエンドの相互作用の処理を読者自身で実装することができます。

以上がvueでログイン機能を実装する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
USESTATEの理解():React React Neact State Managementの包括的なガイドUSESTATEの理解():React React Neact State Managementの包括的なガイドApr 25, 2025 am 12:21 AM

usestate()isareacthookusedtomeStateinfunctionalComponents.1)itInitializeSandUpDatestate、2)colledatttheToplevelofComponents、3)canleadto'stalestate'ifnotusedly、and4)cancancancancancanbeoptimizeduptimizeduptimizedususecall -calleSuperesteSteSteSteSteSteSteSteSteStateSupteStateSuptateSuptatedates

Reactを使用することの利点は何ですか?Reactを使用することの利点は何ですか?Apr 25, 2025 am 12:16 AM

ReactisPopularduetoitsComponent Architecture、Virtualdom、Richecosystem、およびdeclarativenature.1)コンポーネントベースのarchitectureallowsforReusable anduipieces、改善様式および測定可能性。

Reactでのデバッグ:一般的な問題の特定と解決Reactでのデバッグ:一般的な問題の特定と解決Apr 25, 2025 am 12:09 AM

debugReactapplicationivivivity、EtheseStrategies:1)AddressPropdrillingWithContextapiorredux.2)HandLeasynchronousoperations withuthutateanduseeffect、Abortcontrollertopreventraceconditions.3)最適化合物を使用して、最適化合物を使用してください

ReactのUseState()とは何ですか?ReactのUseState()とは何ですか?Apr 25, 2025 am 12:08 AM

UseState()inReactallowsstateManagementInFunctionalComponents.1)itsimplifiesstateManagement、makeCodemoreconcise.2)usetheprevcountFunctionToupDateStateBasedTateBasedTateBadeStateValue、AvolidingStalestateSues.3)

useState()vs。usereducer():州のニーズに合った適切なフックを選択するuseState()vs。usereducer():州のニーズに合った適切なフックを選択するApr 24, 2025 pm 05:13 PM

ChooseuseState()forsimple,independentstatevariables;useuseReducer()forcomplexstatelogicorwhenstatedependsonpreviousstate.1)useState()isidealforsimpleupdatesliketogglingabooleanorupdatingacounter.2)useReducer()isbetterformanagingmultiplesub-valuesorac

UseState()を使用して状態を管理する:実用的なチュートリアルUseState()を使用して状態を管理する:実用的なチュートリアルApr 24, 2025 pm 05:05 PM

UseStateは、州の管理を簡素化し、コードをより明確にし、読みやすくし、Reactの宣言的な性質と一致するため、クラスコンポーネントやその他の州管理ソリューションよりも優れています。 1)UseStateを使用すると、状態変数を関数コンポーネントに直接宣言することができます。2)フックメカニズムの再レンダリング中に状態を覚えています。

UseState()を使用する時期と、代替の州管理ソリューションを検討するタイミングUseState()を使用する時期と、代替の州管理ソリューションを検討するタイミングApr 24, 2025 pm 04:49 PM

useUsestate()forlocalcomponentStatemanagement; compleartinative forglogic、orperformanceissues.1)useidealforsimple、localstate.2)useglobalStateSolutionSolutionSuxorContextForSharedState.3)OptForreDuxtormobxobxobxobforexSt

Reactの再利用可能なコンポーネント:コードの維持可能性と効率の向上Reactの再利用可能なコンポーネント:コードの維持可能性と効率の向上Apr 24, 2025 pm 04:45 PM

再利用することは、codecodemaintainabilityを抑制することを再生します

See all articles

ホット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衣類リムーバー

Video Face Swap

Video Face Swap

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

ホットツール

WebStorm Mac版

WebStorm Mac版

便利なJavaScript開発ツール

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SAP NetWeaver Server Adapter for Eclipse

SAP NetWeaver Server Adapter for Eclipse

Eclipse を SAP NetWeaver アプリケーション サーバーと統合します。

EditPlus 中国語クラック版

EditPlus 中国語クラック版

サイズが小さく、構文の強調表示、コード プロンプト機能はサポートされていません

Safe Exam Browser

Safe Exam Browser

Safe Exam Browser は、オンライン試験を安全に受験するための安全なブラウザ環境です。このソフトウェアは、あらゆるコンピュータを安全なワークステーションに変えます。あらゆるユーティリティへのアクセスを制御し、学生が無許可のリソースを使用するのを防ぎます。