微信 小程序学习笔记(1)

分享一下我老师大神的人工智能教程。零基础!通俗易懂!风趣幽默!还带黄段子!希望你也加入到我们人工智能的队伍中来!https://blog.csdn.net/jiangjunshow

                       

微信的小程序已经推出了,相继的教程也有。官方网页推出API和接口说明,目前来讲暂时足够。
可以进入该链接查看。微信官网

今天尝试一下下载该web的开发工具,从目前来讲,使用了一个下午。目前版本给人的感觉还有待继续提升的恐惧。从编码的体验来讲,对一个重度用户来讲并不算太好用。但足够对付一个轻量级的程序。在调试的过程,由于经常切换显得不是太舒服。

1.注意项目路径

由于第一次初始的时候,下载的demo,由于没有注意app.json的放置的文件夹位置,导致了多了一层,导致老是报一个错误。经同事指点后,将文件和项目文件夹放置同一级处,这样就可以顺利调试到。由于appid申请不到,在公众号那里需要公测,因此只能有限制使用。

一个下午经过调试了一下临时搭建了一个没有功能的界面。

这里写图片描述

2.使用组件

微信这里提供了很多组件,这个和之前的微信样式有点类似。通过组件的组合可以拼接一些界面使用。这个有点像css那样,据官方说wxss文件和css有点相似,区别和限制。

配置一个Tabbar,一个Tabbar最多是5个,相应的字段需要对其进行配置,提供了图片,点击的关联的页面。选择的图标状态。

官方的代码如下:  "tabBar": {      "color": "#dddddd",      "selectedColor": "#3cc51f",      "borderStyle": "black",      "backgroundColor": "#ffffff",    "list": [{      "pagePath": "pages/index/index",      "iconPath": "image/icon_component.png",      "selectedIconPath": "image/icon_component_HL.png",      "text": "首页"    }, {      "pagePath": "pages/logs/logs",      "iconPath": "image/icon_API.png",      "selectedIconPath": "image/icon_API_HL.png",      "text": "我的"    }]
   
   
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18

使用视图,图片,文本,按钮

  <view class="card">      <view class="shopitem">      <image class="shopimg" src="http://img12.360buyimg.com/n5/jfs/t1174/338/865120803/45181/e564982f/5563cb4cNa42cf32c.jpg"></image>      <text class="title">小米充电宝</text>       <text class="price">$69元</text>         <button class="buy" type="primary">购买</button>    </view>   </view>
   
   
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

按钮提供了一些使用的样式类型。

3.使用页面

创建Tabbar按钮,需要关联一些页面,页面的命名方式需要保持一致。
如文件夹为index,里面js wxml 和wxss保持 前缀一样。
index.js
index.wxml
index.wxss
这里写图片描述

切换页面的时候,可以在js里面控制一些行为。下面可以看到,通过app来获取用户的基本信息。

定义数据

  data: {    motto: 'Hello World',    userInfo: {}//用户的基本信息,微信用户的信息  },
   
   
  • 1
  • 2
  • 3
  • 4
//官方案例//index.js//获取应用实例var app = getApp()Page({  data: {    motto: 'Hello World',    userInfo: {}  },  //事件处理函数  bindViewTap: function() {    wx.navigateTo({      url: '../logs/logs'    })  },  onLoad: function () {    console.log('onLoad')    var that = this    //调用应用实例的方法获取全局数据    app.getUserInfo(function(userInfo){      //更新数据      that.setData({        userInfo:userInfo      })    })  }})
   
   
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28

数据绑定

通过加载的数据,获取到了用户的基本信息userInfo。通过数据绑定来显示微信的头像和名字。

  <view  bindtap="bindViewTap" class="userinfo">    <image class="userinfo-avatar" src="{{userInfo.avatarUrl}}" background-size="cover"></image>    <text class="userinfo-nickname">{{userInfo.nickName}}</text>  </view>
   
   
  • 1
  • 2
  • 3
  • 4

4.新建多一页面

这里写图片描述

编辑器里面新增一个页面,并且在app.json里面配置多一页面,把相应的页面配置一下。
在pages里面进行配置新增多一页面。并在tabBar里面新增一个选项指向我们刚创建的页面。

{  "pages":[    "pages/index/index",    "pages/logs/logs",    "pages/me/me"  ],  "window":{    "navigationBarTitleText": "初心暖暖心意",     "navigationBarBackgroundColor": "#000",     "navigationBarTextStyle":"white"  },    "tabBar": {      "color": "#dddddd",      "selectedColor": "#3cc51f",      "borderStyle": "black",      "backgroundColor": "#ffffff",    "list": [{      "pagePath": "pages/index/index",      "iconPath": "image/icon_component.png",      "selectedIconPath": "image/icon_component_HL.png",      "text": "首页"    }, {      "pagePath": "pages/logs/logs",      "iconPath": "image/icon_API.png",      "selectedIconPath": "image/icon_API_HL.png",      "text": "日志"    },    {      "pagePath": "pages/me/me",      "iconPath": "image/icon_API.png",      "selectedIconPath": "image/icon_API_HL.png",      "text": "我的"    }]  },  "debug":true}
   
   
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38

在me.js里面定义一个数据

//index.js//获取应用实例var app = getApp()Page({  data: {    name: 'weChat',    age:"qqq"  },  onLoad: function () {  }})
   
   
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13

界面如下,同时绑定了我们创建的字段。

<view>  <text>我叫{{name}}微信</text></view>
   
   
  • 1
  • 2
  • 3

这里写图片描述
 初步的页面也实现出来了。

5.不足的地方

用起来的时候,软件启动起来十分慢,其次是部分文档出现了错误(同事发现了标签不对的地方)。

软件调试提示性一般对wxml支持不够好,编写起来会有点吃力。提示这块存在薄弱的地方。

(1)建立文件的时候,还需要填写后缀名,这一点让我不理解
(2)软件经常切换调试,如果能实时刷新这个效果不错。类似ReactNative那样
(3)启动画面比较慢
(4)提示比较薄弱,对wxml提示比较差。对这种重度用户而言,用起来不够智能。
(5)文档复制代码比较槽糕,选取的时候经常选取不到。加个复制按钮如何?
(6)代码区域不能拖动,编译的时候为何不在加一个按钮在编辑区域里?

这里写图片描述

6.app和小程序争论焦点

凭借小程序曝光,很多媒体过渡阅读这个小程序可以消灭app这样的说法。app的开发门槛相对小程序要高,对于游戏而言,能不能进去还是未知之数。小程序限制了document和window对象,也不能操控dom,因此在制作上会有所限制。app的门槛高,这个其实h5和app争执的观点。在app上性能更加有所保障,对硬件底层支持更足。这也是小程序很难比较的。目前还没有公测,对小程序可以发挥到什么商业价值。这还有待观察。
 我们在微信可以看到滴滴打车也就是一个一类的小程序了。对于小程序可以消灭app这样说法,笔者还是要持怀疑态度。

           

分享一下我老师大神的人工智能教程。零基础!通俗易懂!风趣幽默!还带黄段子!希望你也加入到我们人工智能的队伍中来!https://blog.csdn.net/jiangjunshow

猜你喜欢

转载自blog.csdn.net/cfhgcvb/article/details/87905610