この記事では、参考までに、簡単なログイン機能を実装するためのvue+tp5の具体的なコードを紹介します。具体的な内容は次のとおりです。 準備: package.jsonに示されているように、vue-cli、element-uiをインストールします。インストール手順に従ってください。 1. srcディレクトリにビューページを作成する 2. /src/router/index.js に次のコードを記述します。 'vue' から Vue をインポートします 'vue-router' から Router をインポートします。 '@/components/HelloWorld' から HelloWorld をインポートします。 '@/views/login/index.vue' からログインをインポートします。 Vue.use(ルーター) デフォルトの新しいルーターをエクスポートします({ ルート: [ { パス: '/'、 名前: 'HelloWorld', コンポーネント: HelloWorld }, { パス: '/login', コンポーネント: ログイン } ] }) 3. app.vue を次の図のように復元します。 4. /src/views/login/index.vue でコードの記述を開始します (ログイン テンプレートを見つけます)。 <テンプレート> <div id="app-1"> <div class="content"> <div class="content_input"> <div class="title"> <p>管理者ログイン</p> </div> <el-input v-model="UserName" clearable placeholder="ユーザー名"></el-input> <el-input v-model="PassWord" clearable show-password placeholder="Password"></el-input> <div class="content_button"> <el-button type="primary" @click="SignIn">ログイン</el-button> </div> </div> </div> </div> </テンプレート> <スクリプト> '@/assets/css/style.css' をインポートします 定数 axios = require('axios') エクスポートデフォルト{ 名前: 'ログイン', データ () { 戻る { ユーザー名: '', パスワード: '' } }, メソッド: { サインイン () { それを = これとする ユーザー名 = that.UserName とします パスワード = that.PassWord とします if (!ユーザー名) { this.$notify.error({ タイトル: 「エラー」、 メッセージ: 'ユーザー名は空欄にできません' }); 偽を返す } そうでなければ (!パスワード) { this.$notify.error({ タイトル: 「エラー」、 メッセージ: 「パスワードは空欄にできません」 }) 偽を返す } それ以外 { // 処理のために情報をバックエンドに渡す axios.post('/api/login/doLogin', { 名前: ユーザー名、 psw: パスワード }) .then(関数 (応答) { console.log(応答) }) .catch(関数 (エラー) { コンソール.log(エラー) }) } } } } </スクリプト> 5. config/index.js で proxytable を設定し、クロスドメインリクエストに axios を使用する プロキシテーブル: { '/api/*': { // api はプロキシインターフェースです target: 'http://localhost:8085/index.php/index', // ここでローカルサービスにプロキシします changeOrigin: true, パス書き換え: { // これはリンクを追加します。たとえば、インターフェースに実際に /api が含まれている場合、この構成は必須です。 '^/api': '/', // と次の 2 つの書き方があり、人によってニーズが異なります。 // /api + /api == http://localhost:54321/api と同等 // '^/api' と記述した場合: '/' // /api + / == http://localhost:54321/ と同等 // /api ここ == http://localhost:54321 } } }, 6. /src/main.js // `import` コマンドで読み込む Vue ビルド バージョン // (ランタイムのみまたはスタンドアロン) が webpack.base.conf にエイリアスとともに設定されています。 'vue' から Vue をインポートします './App' から App をインポートします 'vue-router' から Router をインポートします。 './router' からルーターをインポートします 'axios' から axios をインポートします 'element-ui' から ElementUI をインポートします。 'element-ui/lib/theme-chalk/index.css' をインポートします。 'font-awesome/css/font-awesome.min.css' をインポートします。 Vue.use(要素UI) Vue.use(ルーター) Vue.config.productionTip = false Vue.prototype.$axios = axios /* eslint を無効にする no-new */ 新しいVue({ el: '#app', ルーター、 コンポーネント: { アプリ }, テンプレート: '<App/>' }) 7.tp5バックエンドのindex/controller/Login.phpで: <?php /** * PhpStorm によって作成されました。 * ユーザー: mx1 * 日付: 2021/11/9 * 時間: 15:21 */ 名前空間 app\index\controller; think\Controller を使用します。 クラスLoginはControllerを拡張します { パブリック関数doLogin(){ $name=input('post.name'); $psw=入力('post.psw'); json([$name,$psw]) を返します。 } } 注: 設定したプロキシテーブルが機能しない場合は、インターフェースが正しいことを確認してから、cmd でプロジェクト ディレクトリを見つけて、npm run dev を実行します。 効果: 以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。 以下もご興味があるかもしれません:
|
<<: ChromeとIEに対応したWMPに埋め込まれたHTMLの詳細な紹介
目次複数の種類のフィルタリングをサポート複数の範囲のクエリを避ける並べ替えを最適化するインデックスの...
設定手順Linux システム: CentOS-7.0 MySQL バージョン: 5.7.21 Lin...
目次Linux 環境変数とプロセスアドレス空間コードを通じて環境変数を取得するプロセスアドレス空間な...
<br />作業を簡単に完了できる Web ページ作成ツールは数多くありますが、HTML...
目次データ列を分離するプレフィックスインデックスとインデックスの選択性データ列を分離するMySQL ...
この記事では、参考までにMYSQLログとバックアップとリストアについて紹介します。具体的な内容は以下...
<br />関連記事: ハイパーリンクを表示して開く方法症状<br />ユー...
動的な列を実現するための Angularjs ループ オブジェクト プロパティ利点: オブジェクトを...
目次1. イベントとは何ですか? 2. 「イベント」機能を有効にする1. 機能が有効になっているかど...
この記事の例では、jsでテーブルを動的に追加および削除するための具体的なコードを参考までに共有してい...
目次ストレージエンジンMySQL でサポートされているストレージ エンジン同時実行制御ロック粒子をロ...
目次1. ポーテナーの紹介2. Portainer アーキテクチャの概要3. Portainerのイ...
x-ua-compatible は、IE ブラウザがページを解析およびコンパイルするためのモデルを...
目次01 InnoDBレプリカセットの紹介02 InnoDBレプリカセットの制限03 導入前に知って...
序文継続的なコード配信のプロセスで、Jenkins を利用して Docker イメージを作成すると、...