WeChatウィジェット-入門編
14952 ワード
転載は出典を明記してください.http://blog.csdn.net/iamzgx/article/details/72615506 本文は「iGoachのブログ」から
前言
2017年1月9日、微信小プログラムが発表された.これは、
#開発環境の構築
1.微信開発者となり、微信公衆プラットフォームにアカウントを登録し、微信の個人または企業開発者となる
2.開発ツールをダウンロードしてダウンロードをクリックし、バカにインストールすればいい
3.インストール
HelloWorldの作成
微信
企業開発者であれば、直接
ディレクトリ構造および構成
作成後、ディレクトリ構造は次の図のようになります.
全体的に見ると、ウィジェットは
ページを作成するときは、
レスポンスのデータバインド
上記で作成した
次に
そしてコンパイル後、クリックすると次の効果が得られます.
モジュール化
上記の項目の
以上のコードから分かるように、モジュール化は
ここで,
簡単なログインページを作成
1.
2.
3.
4.応答のイベントを
4.最后に
上記のコードでは、
トップページTab化を実現
多くの小さいプログラムの底部はすべて
ここで注意すべき点は、現在のページに
最後に実現した効果は以下の通りである.
前言
2017年1月9日、微信小プログラムが発表された.これは、
FaceBook
のRN
と、アリのWeex
と、Tencent
の小さなプログラムの3台の馬車が2017年に走行したことを示しています.今日は、まず3台の馬車のうちの1つの小さなプログラムについてお話しします.#開発環境の構築
1.微信開発者となり、微信公衆プラットフォームにアカウントを登録し、微信の個人または企業開発者となる
2.開発ツールをダウンロードしてダウンロードをクリックし、バカにインストールすればいい
3.インストール
NodeJs
公式サイトはNodeJs
をダウンロードして、それからバカ式のインストールができて、インストールができたら、NodeJS
は自動的にPC
の環境変数Path
の中にインストールしたNodeJS
のルートディレクトリを追加して、最後にDOC
はnodeコマンドを実行してインストールができているかどうかを検証して、インストールができたら以下の図に従います.HelloWorldの作成
微信
Web
開発ツールを開くと、企業開発者であれば、直接
AppID
を記入すればいいです.もし私たちが無AppID
をクリックしなければ、私たちの前にNodeJS
がインストールされていなければ、ここには無AppID
が表示されません.だから、私たちは正しくNodeJS
をインストールしなければなりません.次はプロジェクト名とプロジェクト作業ディレクトリを記入すればいいです.プロジェクトの追加をクリックすると、最初のプロジェクトが作成されます.以下の図ディレクトリ構造および構成
作成後、ディレクトリ構造は次の図のようになります.
全体的に見ると、ウィジェットは
MVC
モードに従い、ウィジェットは階層View
と論理層AppService
の2層のフレームワークに分けられ、ビュー層と論理層の間でデータ伝送とイベントシステムを提供する.app.js
,主にいくつかのプログラムのグローバル変数、属性または方法、および実行プログラムのいくつかのライフサイクルを配置します.例えば、onLaunch()
,onShow()
,onHide()
,onLaunch()
.プログラムが起動するとonShow()
メソッドが実行され、ページが表示されるとonHide()
メソッドが実行され、インタフェースが非表示またはバックグラウンドに変換されるとapp.json
メソッドが実行される.pages
すべてのページのパスをwindow
オブジェクトの中にwindow
のスタイルを配置し、tabBar
の下にtab
のスタイルを設定し、networkTimeOut
オブジェクトの中にいくつかのグローバルタイムアウト変数を配置し、debug
賦値によってデバッグモードを開くかどうか.app.wxss
はcss
ファイルに相当し、グローバルスタイルであり、すべてのページで呼び出すことができる.index.js
最初のページの論理層は、いくつかのイベント処理関数を含み、ページのロードが完了すると実行されるonLoad()
方法もある.index.json
は、いくつかのウィンドウnavigationBar
のいくつかの属性をカバーすることができる.index.wxml
ページのビューレイアウトファイルは、Android
のxml
レイアウトに相当します.中のview
はdiv
に相当し、中のbindtap
属性はクリックイベントを指し、対応するクリックイベントはindex.js
で処理される.index.wxss
トップページの一部のスタイルは、index.wxml
のルートノード属性で使用されます.ページを作成するときは、
xxx.js
およびxxx.wxml
が必須であり、他のファイルは必須ではありません.レスポンスのデータバインド
上記で作成した
HelloWorld
コードに基づいて、ボタンを追加し、ボタンをクリックしてdata
オブジェクトの属性motto
属性値を変更し、簡単な応答データバインドレイアウト効果を実現する.まず、トップページのビューファイルindex.wxml
にbutton
コンポーネントを介してボタンを追加します.コードは次のとおりです.
...
<view class="usermotto">
<text class="user-motto">{{motto}}text>
<button bindtap="bindMottoTap" class="userMottoBtn"> button>
view>
view>
index.wxss
に少しスタイルを追加/**index.wxss**/
...
.usermotto {
margin-top: 200px;
text-align: center;
}
.userMottoBtn{
width: 200px;
height: 50px;
margin-top: 10px;
}
次に
index.js
にクリックイベントを追加します//index.js
...
bindMottoTap: function() {
this.setData({
motto:"Hello "
})
},
...
})
そしてコンパイル後、クリックすると次の効果が得られます.
モジュール化
上記の項目の
logs
ページから、コード共通部分をうまく処理し、コードの多重性を向上させる簡単なモジュール化コード使用が見られます.//logs.js
var util = require('../../utils/util.js')
以上のコードから分かるように、モジュール化は
require
というキーワードによって使用され、その後、相対パスパラメータが入力され、モジュール化コードのオブジェクトが取得され、取得されたこのオブジェクトによって関連する方法と属性が呼び出される.例えばutil.js
のformatNumber()
メソッドを呼び出すと、log.js
で直接呼び出すことができます.util.formatTime(new Date(log))
ここで,
util.js
メソッドは任意のページで使用でき,部分コードのモジュール化を実現できる.簡単なログインページを作成
Pages
から新しいページlogin
を作成します.構造は下図のようです.1.
login.json
修正下naigationBar
のタイトル{
"navigationBarTitleText": " "
}
2.
login.wxml
でビュースタイルを作成する
<view class="container">
<view class="section">
<input id="username" type="text" placeholder=" " maxlength="10" bindinput="bindUserName" focus="true"/>
view>
<view class="section">
<input id="password" type="password" placeholder=" " bindinput="bindPassWord" focus="false"/>
view>
<button type="button" class="btn" bindtap="loginBtn"> button>
view>
3.
login.wxss
にcssスタイルを追加/* login.wxss */
.section{
height: 25px;
width: 50%;
background-color: #F2F2F2;
margin: 10px;
padding: 10px;
text-align: left
}
.btn{
width: 25%;
height: 45px;
margin: 10px;
text-align: center;
}
4.応答のイベントを
login.js
で処理// login.js
Page({
data: {
username:'',
password:''
},
bindUserName: function(e) {
this.setData({
username:e.detail.value
});
},
bindPassWord: function(e) {
this.setData({
password:e.detail.value
});
},
loginBtn: function() {
if(this.data.username=="goach"&&this.data.password=="123456"){
wx.navigateTo({
url: '../index/index',
})
}else{
wx.showModal({
title: " ",
showCancel:false,
duration:2000
});
}
},
})
4.最后に
app.json
のpages
第1行配置login
ページ、login
ページをトップページとする{
"pages":[
"pages/login/login",
...
],
...
}
上記のコードでは、
input
コンポーネントによって2つの入力ボックスが実装され、2つの入力ボックスの入力値を取得することでユーザー名とパスワードが正しいかどうかを簡単に検証し、正しい場合はbutton
でwx.navigateTo()
ページにジャンプし、正しくない場合はindex
でプロンプトボックスが表示されます.最後に表示される効果は次のとおりです.トップページTab化を実現
多くの小さいプログラムの底部はすべて
wx.showModel
の効果があって、もしスタイルは比较的に简単ならば、直接小さいプログラムで私达の提供するtab
を使ってすぐに、このような効果を実现するのはtabBar
の中でtabBar`のコードを追加するだけです{
...
"tabBar": {
"color": "#000000",
"selectedColor": "red",
"borderStyle": "white",
"list": [{
"pagePath": "pages/index/index",
"text": " ",
"iconPath":"pages/images/b_index_press_night.png",
"selectedIconPath":"pages/images/b_index_press.png"
},
{
"pagePath": "pages/logs/logs",
"text": " ",
"iconPath": "pages/images/b_log_press_night.png",
"selectedIconPath": "pages/images/b_log_press.png"
}],
"position": 0
}
}
ここで注意すべき点は、現在のページに
app.json
がある場合、1つのページから現在のページにジャンプするにはtab
を使用してジャンプすることはできません.wx.navigateTo()
を使用してジャンプする必要があります.例えば、上のwx.switchTab()
ページからlogin
ページにジャンプすると、世代コードを変更する必要があります. wx.switchTab({
url: '../index/index',
})
最後に実現した効果は以下の通りである.