この記事では、vue のモジュール化に基づいたバックエンド システムの開発について説明します。興味のある方は、この記事をご覧ください。
記事のディレクトリは次のとおりです:
vue のモジュール化に基づいたバックエンド システムの開発 - 準備作業
ベースon vue モジュラー開発バックエンド システム - プロジェクトの構築
はじめに
前の記事で説明した準備ツールに慣れたら、今度は独自のプロジェクトの構築を開始します。これは VUE プロジェクトなので、vue-cli を使用して構築します。次のコマンドを入力します
vue init webpack xxxx
構築プロセス中、前述のようにコードを標準化する必要があるため、eslint の質問に対して Y
と応答する必要があります。すべてが終わったら、ディレクトリ構造を見てみましょうY
。等一切都结束后,我们来看看目录结构
项目目录结构
当然这个目录添加了一些,已经做了备注(加)
,没备注的就是一样的
├── build // 构建相关 ├── config // 配置相关 ├── dist // 打包之后相关 ├── node_modules // npm相关包 ├── src // 代码 │ ├── api // 请求接口文件(加) │ ├── assets // 静态资源(图片,样式等) │ ├── components // 全局公用组件 │ ├── directives // 全局指令(加) │ ├── mock // 项目mock 模拟数据(加) │ ├── pages // 相关页面(加) │ ├── router // 路由 │ ├── store // store管理(加) │ ├── App.vue // 入口页面 │ └── main.js // 入口 加载组件 初始化等 ├── static // 第三方不打包资源 ├── .babelrc // babel-loader 配置 ├── .eslintignore // eslint 忽略项 ├── .eslintrc.js // eslint 配置项 ├── .postcssrc.js // postcss 配置项 ├── .gitignore // git 忽略项 ├── index.html // html模板 └── package.json // package.json
先分析下这些,如果你没有看见node_modules
文件夹,暂时不用管先,接着往下看,依次添加api,directives,mock,pages,store
这几个文件夹,分别的作用
api:存放项目模拟的接口
directives:存放项目全局指令
mock:存放使用
mock.js
模拟的数据pages:存放项目相关的页面
store:存放状态管理
看完这些,其实也没啥好看的,这些都可以随便命名,你爱咋滴就咋滴,接下来就说说package.json
package.json
这是NPM用来管理项目包的文件。
打开这个文件,找到devDependencies
这个属性,我们在里面添加项目所需要的包,例如:
"axios": "^0.17.0",//请求工具
"js-cookie": "^2.2.0",//cookie
"lodash": "^4.17.4",//函数库
"mockjs": "^1.0.0",//模拟数据工具
"vuex": "^3.0.1",//状态管理工具
"vee-validate": "^2.0.0"//表单验证工具
如果你的这个文件已经配置好了,那么直接输入以下命令
npm install --save-dev
当你这样输入的话,你会发现下载非常非常的慢,为啥呢?因为你下载的包可能是在国外,所以呢~~我们加上淘宝镜像
,如下
npm install --save-dev --registry=http://registry.npm.taobao.org
当然,如果你是一个个添加的话,我一般先查看这个包的版本,因为有时候有些包是beta版的,命令如下:
npm show 包名或者插件名称 versions --json
再然后输入下面这个命令:
npm install 包名或者插件名称@版本 --save-dev --registry=http://registry.npm.taobao.org
这时候我们只需要喝杯茶,安静的做个美男子或美少女就可以了~~当下载完成后就可以看见node_modules
文件夹了
个人修改,仅供参考
完成以上步骤之后,还需要修改一下配置。
修改端口
先找到config
这个目录,然后找到index.js
这个文件,打开找到dev
的配置项,由于默认的端口是8080
,为了防止跟其它项目的端口冲突,找到port
这个选项,修改成自己喜欢的端口
运行后浏览器自动打开项目
跟上面一样找到dev
配置项,然后找到autoOpenBrowser
,默认是false
,现在改成true
。
打包后加载资源问题
由于在打包后,出现图片和样式不出来的问题,不知道你们是否也这样,进行了以下修改:
config
这个目录下找到index.js
这个文件,打开找到build
的配置项,添加assetsPublicPath: './'
然后在build
目录下找到utils.js
这个文件,然后找到以下代码:
return ExtractTextPlugin.extract({ use: loaders, fallback: 'vue-style-loader', })
在配置项中添加publicPath: '../../'
プロジェクトのディレクトリ構造
もちろん、このディレクトリにはいくつかの追加が行われており、メモ(added)
が作成されています。注のないものは同じですrrreee
まずはこれらを分析しましょう。node_modules
フォルダーが表示されない場合は、今は気にしないでください。次に、api を確認して追加します。ディレクティブ、モック、ページ、ストア
の順にこれらのフォルダーにはそれぞれの機能があります
-
api:
ストレージ プロジェクト シミュレーション インターフェイス
-
ディレクティブ:
ストレージプロジェクトグローバルコマンド -
mock:
mock.js
を使用してシミュレートされたストレージデータ - pages : ストレージ プロジェクト関連のページ
- ストア: ストレージ ステータス管理🎜
devDependency
を見つけます。ここで、プロジェクトに必要なパッケージを追加します。例: 🎜- 🎜"axios" : "^0.17.0",//リクエストツール🎜
- 🎜"js-cookie": "^2.2.0",//Cookie🎜
- 🎜"lodash": " ^4.17.4",//関数ライブラリ🎜
- 🎜"mockjs": "^1.0.0",//シミュレーションデータツール🎜
- 🎜"vuex": " ^ 3.0.1",//ステータス管理ツール🎜
- 🎜"vee-validate": "^2.0.0"//フォーム検証ツール🎜
淘宝ミラー
を追加します🎜rrreee🎜 もちろん、1つずつ追加する場合、通常は最初にパッケージのバージョンを確認します。一部のパッケージはベータ版である場合があるため、コマンドは次のとおりです: 🎜rrreee🎜 次に、次のコマンドを入力します: 🎜rrreee🎜 この時点では、一杯のお茶を飲んで、静かにハンサムな男性または美しい女の子になるだけで十分です~~ その後ダウンロードが完了すると、node_modules
フォルダーが表示されます 🎜🎜🎜個人的な変更、参照のみ🎜🎜🎜 上記の手順を完了した後も、設定を変更する必要があります。 🎜🎜🎜ポートを変更します🎜🎜🎜まず、ディレクトリconfig
を見つけて、次にファイルindex.js
を見つけて、dev
にある構成アイテムを開きます>、デフォルトのポートは 8080
なので、他のプロジェクトとのポートの競合を防ぐために、オプション port
を見つけて、お気に入りのポートに変更します🎜🎜🎜 Project の実行後に自動的に開きます🎜🎜🎜 上記のように dev
構成項目を見つけて、autoOpenBrowser
を見つけます。デフォルトは false
です。 true
コード>。 🎜🎜🎜パッケージ化後のリソースの読み込みの問題🎜🎜🎜パッケージ化後に画像とスタイルが表示されない問題のため、あなたも同じ問題を抱えているかどうかわかりませんので、次の変更を加えました: 🎜🎜configこのディレクトリ内の
ファイル index.js
を見つけ、build
にある構成アイテムを開き、assetsPublicPath: './'
を追加します。 🎜🎜 そして、build で、
ディレクトリでファイル utils.js
を見つけて、次のコードを見つけます: 🎜rrreee🎜 publicPath: '../ を追加します。設定項目の ../'
🎜🎜🎜概要🎜🎜🎜 この部分は、とりあえず無視していただいても構いませんので、同じ問題が発生した場合にもう一度見てください。プロジェクトの建設に支障をきたすことはありません。ビルドが完了したら、コーディングを開始しましょう。 🎜🎜🎜記事🎜🎜vueのモジュール化に基づいたバックエンドシステムの開発 - 準備作業🎜vueのモジュール化に基づいたバックエンドシステムの開発 - プロジェクトの構築🎜🎜関連する推奨事項: 🎜🎜🎜vue2.0 axioscrossで注意すべきこと-ドメインとレンダリング?🎜🎜🎜🎜モバイル側で慣性スライドとリバウンドVueナビゲーションバーを実装する方法🎜🎜🎜🎜vueプロジェクトがパッケージ化された後のリフレッシュ404に対処する方法🎜🎜以上がvueのモジュール化に基づいたバックエンドシステムの開発 - プロジェクトの構築の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

PHPSESSIONの障害の理由には、構成エラー、Cookieの問題、セッションの有効期限が含まれます。 1。構成エラー:正しいセッションをチェックして設定します。save_path。 2.Cookieの問題:Cookieが正しく設定されていることを確認してください。 3.セッションの有効期限:セッションを調整してください。GC_MAXLIFETIME値はセッション時間を延長します。

PHPでセッションの問題をデバッグする方法は次のとおりです。1。セッションが正しく開始されるかどうかを確認します。 2.セッションIDの配信を確認します。 3.セッションデータのストレージと読み取りを確認します。 4.サーバーの構成を確認します。セッションIDとデータを出力し、セッションファイルのコンテンツを表示するなど、セッション関連の問題を効果的に診断して解決できます。

session_start()への複数の呼び出しにより、警告メッセージと可能なデータ上書きが行われます。 1)PHPは警告を発し、セッションが開始されたことを促します。 2)セッションデータの予期しない上書きを引き起こす可能性があります。 3)session_status()を使用してセッションステータスを確認して、繰り返しの呼び出しを避けます。

PHPでのセッションライフサイクルの構成は、session.gc_maxlifetimeとsession.cookie_lifetimeを設定することで達成できます。 1)session.gc_maxlifetimeサーバー側のセッションデータのサバイバル時間を制御します。 0に設定すると、ブラウザが閉じているとCookieが期限切れになります。

データベースストレージセッションを使用することの主な利点には、持続性、スケーラビリティ、セキュリティが含まれます。 1。永続性:サーバーが再起動しても、セッションデータは変更されないままになります。 2。スケーラビリティ:分散システムに適用され、セッションデータが複数のサーバー間で同期されるようにします。 3。セキュリティ:データベースは、機密情報を保護するための暗号化されたストレージを提供します。

PHPでのカスタムセッション処理の実装は、SessionHandlerInterfaceインターフェイスを実装することで実行できます。具体的な手順には、次のものが含まれます。1)CussentsessionHandlerなどのSessionHandlerInterfaceを実装するクラスの作成。 2)セッションデータのライフサイクルとストレージ方法を定義するためのインターフェイス(オープン、クローズ、読み取り、書き込み、破壊、GCなど)の書き換え方法。 3)PHPスクリプトでカスタムセッションプロセッサを登録し、セッションを開始します。これにより、データをMySQLやRedisなどのメディアに保存して、パフォーマンス、セキュリティ、スケーラビリティを改善できます。

SessionIDは、ユーザーセッションのステータスを追跡するためにWebアプリケーションで使用されるメカニズムです。 1.ユーザーとサーバー間の複数のインタラクション中にユーザーのID情報を維持するために使用されるランダムに生成された文字列です。 2。サーバーは、ユーザーの複数のリクエストでこれらの要求を識別および関連付けるのに役立つCookieまたはURLパラメーターを介してクライアントに生成および送信します。 3.生成は通常、ランダムアルゴリズムを使用して、一意性と予測不可能性を確保します。 4.実際の開発では、Redisなどのメモリ内データベースを使用してセッションデータを保存してパフォーマンスとセキュリティを改善できます。

APIなどのステートレス環境でのセッションの管理は、JWTまたはCookieを使用して達成できます。 1。JWTは、無国籍とスケーラビリティに適していますが、ビッグデータに関してはサイズが大きいです。 2.cookiesはより伝統的で実装が簡単ですが、セキュリティを確保するために慎重に構成する必要があります。


ホットAIツール

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

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

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

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

人気の記事

ホットツール

ZendStudio 13.5.1 Mac
強力な PHP 統合開発環境

MantisBT
Mantis は、製品の欠陥追跡を支援するために設計された、導入が簡単な Web ベースの欠陥追跡ツールです。 PHP、MySQL、Web サーバーが必要です。デモおよびホスティング サービスをチェックしてください。

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

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

AtomエディタMac版ダウンロード
最も人気のあるオープンソースエディター

ホットトピック









