溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

微信小程序開發(fā)經(jīng)驗分享

發(fā)布時間:2021-07-02 14:40:48 來源:億速云 閱讀:123 作者:小新 欄目:web開發(fā)

小編給大家分享一下微信小程序開發(fā)經(jīng)驗分享,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

一: 參數(shù)傳值的方法

1: data-id

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

(1)設(shè)置data-id

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

(2): 取值 + 傳值

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

(3):取值

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

data-注意事項:data-名稱不能有大寫字母,曾經(jīng)我就因為大寫了一個字母,找了半天的才發(fā)現(xiàn)這個錯誤..data-*屬性中不可以存放對象

2: 設(shè)置id 的方法標識來傳值

使用方法說明:

(1)設(shè)置id

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

(2)取值

通過e.currentTarget.id獲取設(shè)置的id的值,然后通過設(shè)置全局對象的方式來傳遞數(shù)值

3: 在navigator中添加參數(shù)傳值

使用方法說明

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

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

(2)取值:

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

二:數(shù)據(jù)請求封裝

1.將所有的接口放在統(tǒng)一的js文件中并導出

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

2:在app.js中創(chuàng)建封裝請求數(shù)據(jù)的方法

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

3: 在子頁面中調(diào)用封裝的方法請求數(shù)據(jù)

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

三:使用模板(發(fā)現(xiàn)模板真是個好東西哦!)

1:定義模板:name設(shè)置模板的名字

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

2:使用模板

首先引入模板

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

然后使用模板is后寫模板的name..通過data來傳遞需要是數(shù)據(jù)

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

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

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

concat() 方法將傳入的數(shù)組或非數(shù)組值與原數(shù)組合并,組成一個新的數(shù)組并返回.

forEach() 方法對數(shù)組的每個元素執(zhí)行一次提供的函數(shù)(回調(diào)函數(shù))。

join() 方法將數(shù)組中的所有元素連接成一個字符串。

keys() 方法返回一個數(shù)組索引的迭代器。

map() 方法返回一個由原數(shù)組中的每個元素調(diào)用一個指定方法后的返回值組成的新數(shù)組

pop() 方法刪除一個數(shù)組中的最后的一個元素,并且返回這個元素。

push() 方法添加一個或多個元素到數(shù)組的末尾,并返回數(shù)組新的長度(length 屬性值)。

toString() 返回一個字符串,表示指定的數(shù)組及其元素。

五:對象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);

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

7 讀取屬性

obj.name || obj['name']

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

8 檢查變量是否聲明

if(obj.name) || if(obj['name'])

9 in 運算符用于檢查對象是否包含某個屬性,如果包含返回true,否則返回false

if ( ‘x' in obj) {return 1}

10 for … in 循環(huán)

用來遍歷一個對象的全部屬性

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

11 with 語句

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

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

等同于

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

以上是“微信小程序開發(fā)經(jīng)驗分享”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對大家有所幫助,如果還想學習更多知識,歡迎關(guān)注億速云行業(yè)資訊頻道!

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI