style 对象 微信小程序_微信小程序中一些JS常识

1.小程序中不支持HTTP请求,配置后台服务器域名只支持https(假设配置后,运行程序还是报域名配置问题,重启开发工具即可),图片地址可以用http。

2.支持请求网页,但是必须在微信公众平台小程序后台配置业务域名。

3.小程序中推送通知又叫模板消息,以“服务通知”的形式推送给用户,一旦微信被后台杀死,就没有推送。同时模板消息只能在两种情况下,才能生成,第一,支付行为,第二,表单提交行为——表单提交:一般可以突破微信官方给定的模板消息上限数量,一般是用一个表单控件不满全屏,然后在表单里添加其他控件,这样用户每进行一次用户交互就能生成一个formId,公司后台就能存储该用户多个formId,可用于多次推送。一个formid只能用一次。

4.小程序中全局变量的存与取。两种方式,一种是存储在缓存中,类似于iOS中的UD,只有小程序被用户删除才会清空,另一种是globalData,这是存储在程序中,只要微信被杀死,globalData的数据就会被清空。下面分别用代码展示:

第一种StorageSync

wx.setStorageSync("key", value);//存

var value = wx.getStorageSync("key");//取

第二种globalData,先在项目app.js文件中找到globalData:{}函数中添加一个你要存的字段

globalData: {

name:"",//属性名自己定

}

//然后在需要存的地方:getApp().globalData.name = "";

//取的时候用:var name = getApp().globalData.name;

5.相信很多人在开发到一定时候,都会想封装一些类,接下来给大家说说封装类的创建及外部调用。我们就先以网络请求封装为例。

首先你需要新建一个netRequest.js文件,然后用js的方法创建一个函数:

/**

* url是请求连接,当然要实现网络请求,请先在服务器后台配置域名

* para是传给服务器的json内容

* style是请求类型GET或者POST

* callback是回调函数,可以传值给调用者

*/

function requestData(url,para,style,callback){

var contentType;

if(style == "GET"){

contentType = 'application/json';

}else{

//post请求必须要设置header类型为以下类型,get请求不用

contentType = 'application/x-www-form-urlencoded';

}

wx.request({

url: url,

data: para,

method: style,

header: {

"content-type": contentType,

},

success: function(res) {

//返回请求结果给调用者

callback(res);

}

})

}

其次是在当前js文件中添加以下代码:

//作用是暴露接口给外部类

module.exports = {

requestData : requestData

}

然后在其他类调用时,先在外部类的最顶部添加一行代码,引用类对象

var netRequest = require("相对路径");

最后在外部类中调用封装类的方法。

//url和para都需要自己传入

netRequest.requestData(url, para, "GET", function (data) {

//打印请求结果

console.log(data);

})

6.延时函数:

setTimeout(function(){

//这儿写延时执行的内容

},5000);//这儿是延时的时间,单位是毫秒

7.循环执行某个函数:

首先在js文件头部定义一个对象var interval;

然后在需要循环执行的地方初始化

interval = setInterval(function () {

that.getCarGps();

//循环执行代码

}, 3000) //循环时间 这里是1秒

//停止定时器的方法

clearInterval(interval);

注意:当循环函数里有延时函数时,记得先停掉循环函数再使用延时函数,不然会报错;

8.说说js中this和that的妙用。

对于this变量最要的是能够理清this所引用的对象到底是哪一个,也许很多资料上都有自己的解释,但有些概念讲的偏繁杂。而我的理解是:首先分析this所在的函数是当做哪个对象的方法调用的,则该对象就是this所引用的对象。

在javascript语言中,this代表着当前的对象,它在程序中随着执行的上下文随时会变化。微信小程序很多API中回调函数对象已经发生了变化。所以已经不是原来的页面对象了。自然就没有了原来页面的data属性,也没有了this.data的说法。

可能说回调函数大家不是很理解,比如很多API都有一个success: function(res) {},大括号里面就是回调函数内部。解决的办法就是在回调函数外部复制一份当前的对象。

var that=this;//把this对象复制到临时变量that

这个时候就能用

that.setData({

//对Page里面的data做一些更改

})

9.小程序中不支持跳转至APP或者APPStore或者安卓市场。但假如要引导用户下载APP,可以用安卓端网页实现APP的下载,iOS端只能引导用户去safiri中打开APPStore下载链接。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值