1.每个项目产品都会让你加埋点,你是愿意花几天一个个加,还是愿意几分钟一个小时加完去喝茶聊天?来试试这520web工具,高效加埋点,目前我们公司100号前端都在用,因为很好用,所以很自然普及开来了,推荐给大家吧
2.http://www.520webtool.com/
3.自己开发所以免费,埋点越多越能节约时间,点两下埋点就加上了,还不会犯错,里面有使用视频,反正免费
4.http://www.520qiubite.com
5.项目功能介绍人工智能虚拟机器人“微软小冰”大家玩过吧,很酷的一个应用。发送文字、语音和图片都能得到智能的回复。
6.那现在我们就用小程序做一个模拟的应用,智能聊天机器人。发送文字它可以回复一段话,或一张图片,是不是有点小酷!
7.下面是小程序开发的一个智能聊天机器人的应用界面:
8.当然,这种智能回复的算法和数据库我们自己肯定是没有的,所以我们借助于图灵机器人的开放API接口来完成我们的功能。
9.图灵机器人接口:http://apistore.baidu.com/apiworks/servicedetail/736.html,在百度APIstore注册获取appkey就可以免费使用了。
10.智能聊天机器人的开发步骤1、整体框架很简单,两个页面。两个tab,并修改window标题栏和tabBar的颜色等属性就好。这个全部在app.json中完成。
11.2、image组件的使用image组件介绍:https://mp.weixin.qq.com/debug/wxadoc/dev/component/image.html?t=20161122image组件的使用与web开发的image标签的用法类似。这里主要关注image的mode属性,它指定图片的缩放以及裁剪模式,共提供了3种缩放、9种裁剪模式。
12.3、form表单的使用表单,将组件内的用户输入的switch/input/checkbox/slider/radio/picker/提交。
13.属性名类型说明report-submitBoolean是否返回formId用于发送模板消息bindsubmitEventHandle携带form中的数据触发submit事件,event.detail={value:{‘name’:‘value’},formId:”}bindresetEventHandle表单重置时会触发reset事件当点击表单中formType为submit的button/组件时,会将表单组件中的value值进行提交,需要在表单组件中加上name来作为key。
14.表单提交的要点:
15.在form内的表单组件必须有name属性。在form内的button的formType属性为submit。form的属性bindsubmit即为数据提交事件绑定的响应函数。4、wx.request接口的使用wx.request发起的是HTTPS请求。一个微信小程序,同时只能有5个网络请求连接。在开发调试模式开发工具没有做安全检查,因此是可以请求http的。
16.wx.request({url:'test.php',//仅为示例,并非真实的接口地址data:{x:'',y:''},header:{'content-type':'application/json'},method:'GET',success:function(res){console.log(res.data)}})了解http的对这个接口参数应该不陌生,首先url为接口地址,data为请求的参数,header为请求的头,header中不能设置header中不能设置Referer。method为请求的方法,包括:OPTIONS,GET,HEAD,POST,PUT,DELETE,TRACE,CONNECT
17.5、scroll-view组件的使用scroll-view为可滚动视图容器。这个主要用于聊天界面在有新的消息时需要自动滚动到最新聊天的位置。它的属性还是比较多的,参看文档:https://mp.weixin.qq.com/debug/wxadoc/dev/component/scroll-view.html?t=20161122
18.属性名类型默认值说明scroll-xBooleanfalsescroll-yBooleanfalse允许纵向滚动upper-thresholdNumber50距顶部/左边多远时(单位px),触发scrolltoupper事件lower-thresholdNumber50距底部/右边多远时(单位px),触发scrolltolower事件scroll-topNumber设置竖向滚动条位置scroll-leftNumber设置横向滚动条位置scroll-into-viewString值应为某子元素id,则滚动到该元素,元素顶部对齐滚动区域顶部bindscrolltoupperEventHandle滚动到顶部/左边,会触发scrolltoupper事件bindscrolltolowerEventHandle滚动到底部/右边,会触发scrolltolower事件bindscrollEventHandle滚动时触发,event.detail={scrollLeft,scrollTop,scrollHeight,scrollWidth,deltaX,deltaY}这里我们主要用到scroll-y(允许纵向滚动)和scroll-top(设置竖向滚动条位置)属性,以完成聊天内容的自动下翻。
19.6、两个坑a、更新数据同时更新scrollTop,无法达到效果需要先更新数据,然后更新scrollTop
20.要这样写才可以更新聊天页面内容并将滚动条置于正确的位置this.setData({content:newContent});this.setData({scrollTop:newScrollTop});而不能写为下面这样this.setData({content:newContent,scrollTop:newScrollTop});b、textarea的value属性绑定逻辑层的data数据段
21.在逻辑层调用setData({text:”“}),textarea中数据并不会被清空。这个问题还没找出解决方案,等研究出方法再更新。













