ホームページ  >  記事  >  WeChat アプレット  >  ミニプログラム開発で遭遇する問題を要約する

ミニプログラム開発で遭遇する問題を要約する

巴扎黑
巴扎黑オリジナル
2017-09-12 09:33:311704ブラウズ

問題の概要:
(1) 分割線の高さを rpx にする問題
隣接する 2 つの情報の間に直接分割線が存在します。線の高さを先ほどの分割線である 1rpx に設定します。 1枚目と2枚目は表示されませんが、その他は表示されます。分割線の属性は同じですが、携帯電話(解像度が異なる)によっては表示されない分割線も異なります。いくつかの分割線が表示されません。これがエミュレータのバグなのか rpx のバグなのかわかりません。解決策: 分割線の高さサイズの単位をpxにすることで、この問題を解決しました。

(2) ページ登録エラー
このエラーはわかりやすいかもしれません、ページ登録エラーです。ページは、Page オブジェクトを通じてレンダリングされます。各ページに対応する js ファイルでページを作成する必要があります。最も簡単な方法は、ページ レンダリングのライフ サイクルをページ内で管理することです。データ処理とイベントはすべてここで完了します。このエラーの原因は通常、ページが作成されたばかりで、js ファイルが処理されていないか、忘れられていることが原因です。
解決策: ページを作成するときに、最初に js ファイルでページを作成する習慣をつけましょう。

(3) ページ ルート エラー
ルートへの繰り返しの呼び出しによって発生する解決策は、ルートを削除し、6d6b736b03111ae04431c76e954ae53b コンポーネントまたは wx.navigateTo を削除します。

(4) 現在のページに*ハンドルがありません。
実際、この種の問題は通常、wxmlで処理イベントを定義するときに発生しますが、イベント処理メソッドがjsファイルに実装されていない場合、これは間違いが起こる。次に、プロンプトに従って、js ファイルにイベント処理を追加します
解決策: イベントを呼び出すメソッドを見逃さないでください

(5) tabBar の設定が表示されません
tabBar が表示されない原因はさまざまです。このエラーを見つけて、アプリに直接アクセスしてください

app.json にページが登録されていません

書き方が間違っているため、tabBar が表示されません

tabBarのリスト、またはpagePathにpagePathフィールドが書き込まれていません 中のページが登録されていません

tabBarリストのpagePathで指定されたページが登録ページの最初に書き込まれていません。 WeChat アプレットのロジックでは、「pages」の最初のページがホームページになります。これは、tabBar リストの pagePath で指定されたページがページの最初のページではない場合、プログラムの開始後に表示される最初のページです。もちろんタブバーは表示されません。

tabBar の数は 2 項目未満、または 5 項目以上です。WeChat 公式は、tabBar には少なくとも 2 項目、最大 5 項目を含める必要があると明確に規定しています。より大きいか小さい場合、tabBar は表示されません。

(6) wx.navigateTo でページを開けません
アプリケーションは同時に 5 ページしか開くことができません。5 ページを開いた後は、wx.navigateTo で新しいページを正常に開くことができなくなります。マルチレベルのインタラクションを避けるか、wx.redirectTo を使用してください

(7) ローカル リソースは css
background-image を通じて取得できません: ネットワーク イメージ、base64、または 565b296a3970f2fc50e58c1bb915cb79 タグを使用できます

; (8 ) ページ データ転送
WeChat アプレット ルーティング (ページ ジャンプ) は、wx.navigateTo または wxml の 0e1e9be57d3815196e4c83d329f1e05f コンポーネントを通じて実装されます。どの実装でも重要なパラメーターは URL です。ジャンプされるページ、およびページ間のデータ転送も URL を介して実装されます。このデータ転送は、ジャンプされるインターフェイスのアドレスの後に接続される get network リクエストに似ています。と "?"。そして、「?」の後に渡すデータをキーと値の形で追加し、複数のパラメータを「&」で直接照合します。このように書くことができます

<navigator url="/pages/dynamic/dynamic?title={{item.title}}&message={{item.message}}">
<view class="item" >
<view class="item-left">
<image src="{{item.url}}" class="image"/>
</view>
<view class="item-middle">
<view>
<text class="title">{{item.title}}</text>
</view>
<view>
<text class="message">{{item.message}}</text>
</view>
</view>
<view class="item_right">
<view><text class="time">{{item.time}}</text></view>
<view class="mark" wx:if="{{item.count>0}}"><text class="text">{{item.count}}</text></view>
</view>
</view>
<view class="line"></view>
</navigator>

データは js ファイルのページで受信されます。ページのライフサイクルには、データを初期化する処理を行う onLoad 関数があり、この関数にはパラメーター オプションがあります。キーを介してデータを渡すと、以下のようになります

onLoad:function(options){
// 页面初始化 options为页面跳转所带来的参数
console.log(options.title) //这里是接收参数
console.log(options.message)
},

これにより、ページ間のデータ転送機能が実現されます。

以上がミニプログラム開発で遭遇する問題を要約するの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。