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下载链接。

style 对象 微信小程序_微信小程序中一些JS常识相关推荐

  1. 如何微信链接自定义_微信链接自定义

    微信在分享第三方网站是不显示缩略图和描述的,如下图所示 微信链接自定义_微信链接自定义 要解决这个问题必须调用微信JS-SDK接口,下面讲一下如何调用接口. 第一部分 准备步骤 注册微信公众号. 通过 ...

  2. then 微信小程序_微信小程序和es6 promise的关系

    微信小程序上线一年多了,大家的项目都在不断迭代.已经不是小程序,这时候就会遇到多层回调嵌套的问题.有些目不忍视了,迫不得已引入es6-promise,在微信小程序内测的时候promise不需要手动引入 ...

  3. 小程序 微信统计表格_微信小程序简单的数据表格及查询功能

    简介: 此项目是一个前后端分离的小demo, 开发工具:idea+微信小程序开发工具 前端:界面布局样式和js的跳转 后端:依靠SpringBoot的业务逻辑层 项目的码云地址: 微信开发工具的使用和 ...

  4. webview 个人小程序_微信小程序新增Webview它是什么东西?

    原标题:微信小程序新增Webview,它是什么东西? 今天刚刚给客户做完案子,正准备去睡觉.2017 今天刚刚给客户做完案子,正准备去睡觉.2017年11月3日 11:29看到了微信公众平台推送的小程 ...

  5. input ios问题 小程序_微信小程序开发常见问题汇总

    原标题:微信小程序开发常见问题汇总 1.域名必须是https 非https的域名不被微信小程序允许. 2.input组件placeholder字体颜色 卸载placeholder-class里面的co ...

  6. mysql传数据到微信小程序_微信小程序直播 数据同步与转存

    本文已同步到专业技术网站 www.sufaith.com, 该网站专注于前后端开发技术与经验分享, 包含Web开发.Nodejs.Python.Linux.IT资讯等板块. 本教程所用项目框架为egg ...

  7. qml如何发布程序_微信小程序如何发布?公司和个人注册流程科普

    如今制作微信小程序已经是非常简单的事了,即使是完全不懂技术的小白,也能利用小程序制作工具快速生成小程序,基本上选一个模板就能快速把页面搭建好. 不过,虽然小程序页面搭建很简单,但还有不少人不知道页面搭 ...

  8. 后退一步 小程序_微信小程序:如何利用navigateBack退出小程序

    在Android开发时,我们可以使用finish()或者结束进程等手段达到退出app的效果,但是,微信小程序则没有提供退出小程序的api,必须用户点击系统返回键或者点击顶部小程序固定的的退出按钮... ...

  9. ready等方法 微信小程序_微信小程序开发一些经验

    对于微信小程序开发入门,还是比较简单的,只需要具备基本的css+js知识就可以了,成本比较低. 写了小程序和RN之后,有一种原生很笨重的感觉,就是小程序或者是RN等这些新的开发方式在效率上面真的有比较 ...

  10. ar 微信小程序_微信小程序开放AR功能,全面提升交互体验

    1.什么是AR? AR又称增强现实(Augmented Reality)技术,是一种将虚拟信息与真实世界巧妙融合的技术,广泛运用了多媒体.三维建模.实时跟踪及注册.智能交互.传感等多种技术手段,将计算 ...

最新文章

  1. SQL INNER JOIN LEFT JOIN RIGHT JOIN 笛卡尔积
  2. Exchange2003中实现两个邮件系统收发邮件配置实例
  3. 在CentOS7上配置SVN
  4. linux 监控命令
  5. yum报错[Errno 256] No more mirrors to try.
  6. Oracl数据库中大数据的备份-2
  7. C语言printf函数
  8. Java性能最后一个领域:去除垃圾回收器
  9. 27muduo_net库源码分析(三)
  10. 2010-04-02
  11. LINUX安装依赖库冲突的最终版本:下列软件包有未满足的依赖关系/但是它将不会被安装/无法修正错误,因为您要求某些软件包保持现状,就是它们破坏了软件包间的依赖关系
  12. JAVA语法——n的阶乘(高级)
  13. php抓取网络电视源,电视直播源抓取工具箱
  14. 修改VS2017打开在文件中查找窗口以及格式化代码的快捷键
  15. 关于vs中Microsoft.Office.Interop.MSProject
  16. 树莓派无显示器连接无线
  17. 一维卷积(1D-CNN)、二维卷积(2D-CNN)、三维卷积(3D-CNN)
  18. 独立开发者接入防沉迷尽然如此简单?-TapTap 防沉迷模块Android版
  19. Java电子信箱系统的设计与实现
  20. 编辑 用Excel制作股票交易表格/日志,带macro宏程序(vba)更新V1.5

热门文章

  1. 【uni-app】App实现二维码分享图合成(支持单张或多张)
  2. GO TO SHEN ZHEN
  3. 签名来保证ASP.NET MVC OR WEBAPI的接口安全
  4. 消费者与电商变革传统企业
  5. 远程桌面管理_IIS7远程桌面连接工具使用方法
  6. 线性代数考研笔记(三)
  7. 【论文笔记】Learning to Count in the Crowd from Limited Labeled Data
  8. 基于FPGA的DDS设计
  9. php 图片上加文字,php使用GD库实现图片上添加文字的方法(代码)
  10. RT1052的LPI2C配置