首頁  >  文章  >  微信小程式  >  值得一看的微信小程式開發經驗總結

值得一看的微信小程式開發經驗總結

高洛峰
高洛峰原創
2017-03-10 15:44:501668瀏覽

本篇文章主要介紹值得一看的微信小程式開發經驗總結,小編覺得挺不錯的,現在分享給大家,也給大家做個參考。一起跟著小編過來看看吧

一: 參數傳值的方法

1: data-id

我們可以為HTML元素加入data-*屬性來傳遞我們需要的值,使用方法說明:

(1)設定data-id

#
<view class="block" bindtap="playTap" data-id="{{modle.id}}">

(2): 取值+ 傳值

#
playTap:function(e) {
    const dataset = e.currentTarget.dataset;
    wx.navigateTo({
     url: &#39;../play/index?id=&#39;+ dataset.id
    })
    console.log(dataset.id);
  }

(3):取值

onLoad:function (param) {
  //页面初始化
    this.setData({
      currentId:param.id
    })
}

data-注意事項:data-名稱不能有大寫字母,曾經我就因為大寫了一個字母,找了半天的才發現這個錯誤..data-*屬性中不可以存放物件

2: 設定id 的方法標識來傳值

使用方法說明:

(1)設定id

<view bindtap=“playTap" id="{{modle.id}}">

(2)取值

透過e.currentTarget.id取得設定的id的值,然後透過設定全域物件的方式來傳遞數值

3: 在navigator中新增參數傳值

使用方法說明

(1)傳值:在navigator的屬性url後面拼接?id(參數名字)=要傳遞的值(如果多個參數用&分開&name=value&….)

<navigator url="../my/my?id={{item.id}}" wx:for="{{modles}}">

(2)取值:

onLoad (params){
    app.fetch(API.detail + params.id,(err,data) => {
    })
  }

#二:資料請求封裝

1.將所有的介面放在統一的js檔案中並匯出

#
const api = {
  interface1: &#39;https://........&#39;,
   interface2: &#39;https://.......&#39;,
   interface3: &#39;https://....&#39;,
   .....
}
module.exports = api;

2:在app .js中建立封裝請求資料的方法

fetch(url,data, callback) {
   wx.request({
     url,
     data: data,
     header: {
       &#39;Content-Type&#39;: &#39;application/json&#39;
     },
     success(res) {
       callback(null, res.data);
     },
     fail(e) {
       callback(e);
     }
   })
 },

#3: 在子頁面中呼叫封裝的方法請求資料

import API from "../../api/api.js";
const app = getApp();
const conf = {
  data:{
    title:&#39;正在拼命加载中...&#39;,
    loadding:true
  },
  onLoad (){
    app.fetch(API.hot,{},(err,data) => {
    })
  },

三:使用範本(發現範本真是個好東西哦!)

1:定義範本:name設定範本的名字

<template name="homecell">
   <view class="item">
  </view>
 </template>

#2:使用範本

首先引入模板

<import src="../../commonXml/homecell.wxml" />

然後使用模板is後寫模板的name..透過data來傳遞需要是資料

<template is="homecell" data="{{item}}"></template>

四:Array比較好用的屬性與方法

Array.isArray() 方法用來判斷某個值是否為Array。如果是,則傳回 true,否則傳回 false。

concat() 方法將傳入的陣列或非陣列值與原數組合並,組成一個新的陣列並傳回.

forEach() 方法對陣列的每個元素執行一次提供的函數(回呼函數)。

join() 方法將陣列中的所有元素連接成一個字串。

keys() 方法傳回一個陣列索引的迭代器。

map() 方法傳回一個由原始數組中的每個元素呼叫一個指定方法後的返回值組成的新數組

pop() 方法刪除一個數組中的最後的一個元素,並且傳回這個元素。

push() 方法將一個或多個元素新增到陣列的結尾,並傳回陣列新的長度(length 屬性值)。

toString() 傳回字串,表示指定的陣列及其元素。

五:物件Object常用方法

1 初始化方法

var obj = [];
var obj = new obj();
var obj = Object.create(null);

2 新增元素的方法

dic[“key”] = “value”;

3 刪除key的方法

delete dic[“key”];

4 清空詞所有條目

dic.clear();

5 刪除

##

delete dic;

6 查看所有屬性的方法

Object.keys(obj);

物件的所有鍵名都是字串,所以加不加引號都可以,如果鍵名是數值,會被自動轉為字符字串但是,如果鍵名不符合標識名的條件(例如第一個字元為數字,或含有空格或運算符),也不是數字,則必須加上引號,否則會報錯

7 讀取屬性

obj.name || obj[&#39;name&#39;]

注意: 數值鍵名不能使用點運算子(因為會被當成小數點),只能使用方括號運算子。

8 檢查變數是否宣告

if(obj.name) || if(obj[&#39;name&#39;])

9 in 運算子用於檢查物件是否包含某個屬性,如果包含回傳true,否則傳回false

if ( ‘x&#39; in obj) {return 1}

10 for … in 迴圈

用來遍歷一個物件的全部屬性

#

for (var i in obj) {
console.log(obj);
}

11 with 語句

作用: 操作同一個物件的多個屬性時,提供一些書寫的方便

with(obj) {
name1 = 1;
name2 = 2;
}

#等同於

obj.name1 = 1;
obj.name2 = 2;

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持PHP中文網。

以上是值得一看的微信小程式開發經驗總結的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn