學(xué)習(xí)時(shí)間不短了。今天公司不加班總結(jié)一下我的開發(fā)經(jīng)驗(yàn)吧,寫下來讓我自己也記得更清楚,同時(shí)希望可以幫助到有需要的同學(xué)。
01、參數(shù)傳值的方法
1: data-id
我們可以給HTML元素添加data-*屬性來傳遞我們需要的值,使用方法說明:
(1)設(shè)置data-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-*注意事項(xiàng):data-*名稱不能有大寫字母,曾經(jīng)我就因?yàn)榇髮懥艘粋€(gè)字母,找了半天的才發(fā)現(xiàn)這個(gè)錯(cuò)誤..data-*屬性中不可以存放對(duì)象
2: 設(shè)置id 的方法標(biāo)識(shí)來傳值
使用方法說明:
(1)設(shè)置id
' id='{{modle.id}}'>
(2)取值
通過e.currentTarget.id獲取設(shè)置的id的值,然后通過設(shè)置全局對(duì)象的方式來傳遞數(shù)值
3: 在navigator中添加參數(shù)傳值
使用方法說明
(1)傳值
在navigator的屬性u(píng)rl后拼接?id(參數(shù)名字)=要傳遞的值 (如果多個(gè)參數(shù)用&分開 &name=value&.......)
'../my/my?id={{item.id}}' wx:for='{{modles}}'>
(2)取值
onLoad (params){ app.fetch(API.detail + params.id,(err,data) => { }) }
02、數(shù)據(jù)請(qǐng)求封裝
1:將所有的接口放在統(tǒng)一的js文件中并導(dǎo)出
const api = { interface1: 'https://........', interface2: 'https://.......', interface3: 'https://....', .....}module.exports = api;
2:在app.js中創(chuàng)建封裝請(qǐ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)用封裝的方法請(qǐng)求數(shù)據(jù)
import API from '../../api/api.js';const app = getApp();const conf = { data:{ title:'正在拼命加載中...', loadding:true }, onLoad (){ app.fetch(API.hot,{},(err,data) => { }) },
03、使用模板
1:定義模板:name設(shè)置模板的名字
定義模板
2:使用模板
首先引入模板
import src='../../commonXml/homecell.wxml' />
然后使用模板is后寫模板的name..通過data來傳遞需要是數(shù)據(jù)
04、Array比較好用的屬性和方法
Array.isArray() 方法用來判斷某個(gè)值是否為Array。如果是,則返回 true,否則返回 false。
concat() 方法將傳入的數(shù)組或非數(shù)組值與原數(shù)組合并,組成一個(gè)新的數(shù)組并返回.
forEach() 方法對(duì)數(shù)組的每個(gè)元素執(zhí)行一次提供的函數(shù)(回調(diào)函數(shù))。
join() 方法將數(shù)組中的所有元素連接成一個(gè)字符串。
keys() 方法返回一個(gè)數(shù)組索引的迭代器。
map() 方法返回一個(gè)由原數(shù)組中的每個(gè)元素調(diào)用一個(gè)指定方法后的返回值組成的新數(shù)組
pop() 方法刪除一個(gè)數(shù)組中的最后的一個(gè)元素,并且返回這個(gè)元素。
push() 方法添加一個(gè)或多個(gè)元素到數(shù)組的末尾,并返回?cái)?shù)組新的長度(length 屬性值)。
toString() 返回一個(gè)字符串,表示指定的數(shù)組及其元素。
05、對(duì)象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);
對(duì)象的所有鍵名都是字符串,所以加不加引號(hào)都可以,如果鍵名是數(shù)值,會(huì)被自動(dòng)轉(zhuǎn)為字符串但是,如果鍵名不符合標(biāo)識(shí)名的條件(比如第一個(gè)字符為數(shù)字,或者含有空格或運(yùn)算符),也不是數(shù)字,則必須加上引號(hào),否則會(huì)報(bào)錯(cuò)
7:讀取屬性
obj.name || obj[’name']
注意: 數(shù)值鍵名不能使用點(diǎn)運(yùn)算符(因?yàn)闀?huì)被當(dāng)成小數(shù)點(diǎn)),只能使用方括號(hào)運(yùn)算符。
8:檢查變量是否聲明
if(obj.name) || if(obj[’name'])
9:in 運(yùn)算符用于檢查對(duì)象是否包含某個(gè)屬性,如果包含返回true,否則返回false
if ( ‘x’ in obj) {return 1}
10:for … in 循環(huán)
用來遍歷一個(gè)對(duì)象的全部屬性
for (var i in obj) {console.log(obj);}
11:with 語句
作用: 操作同一個(gè)對(duì)象的多個(gè)屬性時(shí),提供一些書寫的方便
with(obj) {name1 = 1;name2 = 2;}
等同于
obj.name1 = 1;obj.name2 = 2;
完~
聯(lián)系客服