• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >微信小程序 > 微信小程序数据封装及参数传值等经验总结

微信小程序数据封装及参数传值等经验总结

作者:匿名 字体:[增加 减小] 来源:互联网 时间:2018-11-30

匿名通过本文主要向大家介绍了微信小程序等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com
这篇文章主要介绍了微信小程序数据封装及参数传值等经验总结的相关资料,需要的朋友可以参考下

微信小程序开发总结:

一: 参数传值的方法

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: '../play/index?id='+ 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: 'https://........',

   interface2: 'https://.......',

   interface3: 'https://....',

   .....

}

module.exports = api;

2:在app.js中创建封装请求数据的方法


 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: 在子页面中调用封装的方法请求数据


import API from "../../api/api.js";

const app = getApp();

const conf = {

  data:{

    title:'正在拼命加载中...',

    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);

对象的所有键名都是字符串,所以加不加引号都可以,如果键名是数值,会被自动转为字符串但是,如果键名不符合标识名的条件(比如第一个字符为数字,或者含有空格或运算符),也不是数字,则必须加上引号,否则会报错6 读取属性


obj.name || obj['name']

注意: 数值键名不能使用点运算符(因为会被当成小数点),只能使用方括号运算符。7 检查变量是否声明


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

8 in 运算符用于检查对象是否包含某个属性,如果包含返回true,否则返回false


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

9 for … in 循环用来遍历一个对象的全部属性


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

10 with 语句作用: 操作同一个对象的多个属性时,提供一些书写的方便


with(obj) {
name1 = 1;
name2 = 2;
}
等同于
obj.name1 = 1;
obj.name2 =

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

以上就是微信小程序数据封装及参数传值等经验总结的详细内容,更多请关注微课江湖其它相关文章!

分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

相关文章

  • 2018-11-30使用DeviceOne实现微信小程序功能
  • 2018-08-20微信小程序表单组件 checkbox
  • 2017-06-20微信小程序的掘金信息流demo代码
  • 2018-11-30EasyUI Layout实现tabs标签实例详解
  • 2018-11-30微信小程序日历组件开发
  • 2017-06-20微信小程序-微票
  • 2018-11-30微信小程序显示下拉列表功能的实现方法
  • 2018-11-30微信小程序中scroll-view实现锚点滑动
  • 2018-11-30微信小程序-getUserInfo回调的介绍
  • 2018-11-30实例详解微信小程序如何使用Socket

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • 微信小程序 LOL 英雄的开发介绍
    • CSS和JS的加载和执行详解
    • 微信小程序实战开发之视图层WXML:事件
    • 微信小程序页面跳转功能中从列表的item项跳转到下一个页面的实现方法
    • 微信小程序运行机制
    • 微信小程序开发教程之增加mixin扩展
    • 微信小程序实现导航栏选项卡的效果
    • 微信小程序开发之全局文件
    • 微信小程序按钮滑动功能代码
    • 小程序实现类似于苹果AssistiveTouch功能(附代码)

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有