您好,欢迎访问一九零五行业门户网

小程序开发基础篇之index页面解析(5)

上一篇教程谈了些和微信小程序开发本身无关的技术问题,现在回到主题。
这边教程主要对默认生成的index 页面进行讲解。在之前的教程中有写道,每一个页面都包含.js(处理逻辑),.wxml(描述页面内容),.wxss(配置页面样式)三个文件,index 页面也是如此。
讲解之前先上图
这里写图片描述
index页面的内容不多,只有一个用户头像,用户姓名,和一个hello world,首先来看看index.wxml的内容
<!--index.wxml--> <view class="container"> <view bindtap="bindviewtap" class="userinfo"> <image class="userinfo-avatar" src="{{userinfo.avatarurl}}" background-size="cover"></image> <text class="userinfo-nickname">{{userinfo.nickname}}</text> </view> <view class="usermotto"> <text class="user-motto">{{motto}}</text> </view> </view>
该页面的层级结构比较简单,三个view标签,一个image以及两个text标签,其中view为容器标签,image用来显示用户头像,第一个text用来显示用户昵称,第二个text则是"hello world"
可以看到页面描述文件中绑定了几个变量,分别是第二个view标签的 bindtap="bindviewtap",image标签的src="{{userinfo.avatarurl}} 以及两个text标签的内容文本。那么这些变量定义在哪里呢,答案就在index.js中
//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 }) }) } })
index.js代码定义了page对象,该对象中定义了index.wxml绑定的变量,其中onload方法会在页面加载时被调用,该方法会调用app对象的getuserinfo方法来获取用户信息并赋值给userinfo属性,这样界面就可以显示用户头像和昵称了。而"hello world"的显示则是由motto属性直接指定。
page对象还定义了bindviewtap方法,该方法通过调用wx.navigateto导航到logs页面。关于页面导航的更多内容将在后面的教程中讲解。在该例子中,当用户点击用户头像和昵称的视图区域时,程序便会显示logs页面。
最后简单看下index.wxss
/**index.wxss**/ .userinfo { display: flex; flex-direction: column; align-items: center; } .userinfo-avatar { width: 128rpx; height: 128rpx; margin: 20rpx; border-radius: 50%; } .userinfo-nickname { color: #aaa; } .usermotto { margin-top: 200px; }
该文件定义了index.wxml中使用到的样式选择器,这部分比简单,在这里就不多做解释了。
以上就是小程序开发基础篇之index页面解析(5)的详细内容。
其它类似信息

推荐信息