水の中のアヒルのように WeChat ミニ プログラムを開発する方法
WeChat ミニ プログラムの開発を要約して記録するために関連記事を書きたいと常々思っていたのですが、先延ばしにしていて書き始めていませんでした。最近時間ができたので、この記事は午後に出力して(天気とは関係ないようです)、それでは始めましょう!
注: この記事は、開発者が WeChat アプレット開発における特定の文法の基礎を持っていることを前提としています。 ミニ プログラム開発ドキュメント
関連する無料学習の推奨事項: WeChat ミニ プログラム開発
WeChatミニ プログラムの概要
# WeChat ミニ プログラムの開発プロセス中に、インターフェイス リクエストなど、開発者の利便性を考慮して、WeChat ミニ プログラムが多くの基礎となる API を適切にカプセル化していることを見つけるのは難しくありません。 wx.request()
、wx.switchTab、wx.navigateTo???
など、ルーティング ジャンプやページ ナビゲーションに使用します。ある程度の開発は簡略化されますが、プロジェクトエンジニアリングを体系的に構築するにはまだ不十分であるため、これまでの Vue ベースのプロジェクト開発の経験と自分の開発習慣を比較して、参考として次の 3 つのポイントをまとめました。
1. グローバル変数と構成情報の統合管理;
2. ルート ガード関連 API のカプセル化:
vue-router
router.beforeEach()
とrouter.afterEach()
は非常に優れています;3. このインターフェイスは、次の公開情報を要求します。さらなる抽出とカプセル化;
4. カプセル化されたインターフェイスのリクエストとレスポンスのインターセプト API:
axios.interceptors.request.use()
およびaxios
axios.interceptors.response.use()
使ったことのある人はみんな良いと言っています;
上記の 4 点から始めて、標準化とWeChat アプレット初期化プロジェクトを最適化すると、開発効率とプロジェクトの保守管理が大幅に向上します。カプセル化の利点は、呼び出しの利便性だけでなく、管理の利便性にも反映され、同時にパブリック操作が集中的に処理されるため、複雑で反復的なコードが大幅に削減されます。
1. プロジェクトの初期化
新しい WeChat アプレット プロジェクトを作成し、プロジェクトの下に次のディレクトリとファイルを作成します:
- configフォルダー: 設定可能な情報と変数の一元管理;
- erroList.js: インターフェースエラー報告
エラーコード
マッチングリストファイル; - globalData.js:
グローバル変数
一元管理ファイル(vuex相当); - keys.js: 設定可能なシステム情報管理ファイル(グローバル定数命名など);
- erroList.js: インターフェースエラー報告
- pagesフォルダ: 小さなプログラム ページ ファイル管理フォルダー (ページごとに 1 つのサブフォルダー ディレクトリ);
- router フォルダー: ルーティング管理ファイル;
- router.js: WeChat アプレット
5 の一種ルーティング ナビゲーション
API カプセル化; - routerConfig.js: 設定ファイルに一致するページ ルーティング名とパス;
- routerFilter.js: ルート プレフィックス
interception
encapsulation ;
- router.js: WeChat アプレット
- servers ファイル: インターフェイス リクエスト サービス管理フォルダー;
- apis フォルダー: リクエスト リクエストのカプセル化管理およびインターフェイス API 構成管理フォルダー;
- request.js:
Promise
wx.request
のカプセル化; - xxx.js: 対応モジュールのインターフェース管理ファイル;
- request.js:
- requestFilter .js: インターフェイス
リクエストとレスポンスのインターセプト
カプセル化ファイル;
##その他は初期化のデフォルト ファイル; - apis フォルダー: リクエスト リクエストのカプセル化管理およびインターフェイス API 構成管理フォルダー;
##2. ルート ジャンプとルート ガードのカプセル化
1. ルート ジャンプのカプセル化
## WeChat ミニ プログラムの公式ドキュメントは開発者に提供します5 つのルーティング API があり、それぞれに独自の特別な使用法があります: 次のようにカプセル化します: WeChat アプレットのルートジャンプは最終的に push、replace、pop、relaunch、switchTab に対応します;
routesはに対応しますRouteConfig.js のルーティング パスの構成;
routerFilter ルート ジャンプの前にロジックを処理する routerFilter.js ファイルに対応します;
1 2 3 4 5 |
|
routerFilter.js:
1 2 |
|
router.js (routerFilter は、ルーティング ジャンプ前のパブリック オペレーションの処理と、ルーティング ジャンプの成功時と失敗時のパブリック オペレーションの処理を担当します) :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 |
|
2、グローバル登録と使用 app.js
でのカプセル化されたルーティング API のグローバル登録:1
import router from
"./router/router.js"
//全局注册wx.router = router
ログイン後にコピー
ページ ロジックで使用:
1 |
|
1 2 |
|
同じプロジェクトの場合、WeChat アプレット内の多くのパラメータ api
wx.request( )
借鉴axios
对请求的封装,将wx.request()
封装为Promise
形式岂不美哉:
request.js:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 |
|
具体使用
以user.js为例:
1 |
|
index页面调用:
1 2 3 4 5 6 7 8 9 10 11 12 13 |
|
四、接口的请求和响应拦截封装
axios
的axios.interceptors.request.use()
和axios.interceptors.response.use()
分别对应接口请求前的拦截处理和数据响应后的拦截处理;根据这个原理我们对微信小程序的响应也做拦截封装,对接口请求返回错误进行统一管理输出:
request.js
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 |
|
requestFilter.js
requestFilter.js中可以做很多对报错的处理,这里用一个简单的toast处理示范下:
1 2 3 4 5 6 7 8 9 10 |
|
对报错进行统一处理需要明确数据规:
- 制定统一的报错码管理规范;
- 制定前后端统一的接口请求数据返回格式;
五、全局数据管理
对于数据的管理在小项目的开发中显得不那么重要,但是随着项目越来越大,数据越来越多,一个很好的数据管理方案能够有效地避免很多bug,这也是vuex能够在vue生态中占有一席之地的原因。秉承着合理管理数据的原则,对于该封装的数据坚决封装,对于该分模块管理的配置坚决分块管理:
globalData.js
微信小程序中全局的数据管理放在app.js
的globalData
属性中,当数据太多或者app.js逻辑太复杂时,将全局数据提取出来单独管理的确是个好方案:
1 2 3 4 5 6 |
|
keys.js
keys.js属于个人开发中的习惯操作,将项目中可能用到的一些常量名称在此集中管理起来,十分方便调用和修改维护:
1 2 3 4 |
|
全局引用和注册
引入app.js:
1 2 3 4 5 6 7 8 9 10 |
|
使用
在页面代码逻辑中可以通过app.globalData.host
,wx.$KEYS.TOKEN
方式进行调用;
六、总结
上述关于微信小程序开发的几个方面都是在实践中学习和总结的,技术层面的实现其实很容易,但是个人觉得开发规范项目工程构建才是一个项目的重要基础;完善的规范能够有效的提高开发效率和开发者之间非必要的扯皮
!合理的项目工程构建能够优化开发逻辑,提高代码逻辑易读性,减少后期项目的管理时间,同时给予项目更大的扩展性。
有需要源码的可以关注微信公众号 哇喔WEB 回复 "wxmp"获取;
欢迎大家讨论留言、进行补充!
相关学习推荐:小程序开发教程
以上が水の中のアヒルのように WeChat ミニ プログラムを開発する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ホットAIツール

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

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

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

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

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

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

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

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

ホットトピック









