微信js框架第二篇(创建完整界面布局)
本人开发的开发者技术变现资源聚集地,大家支持下,下面是网址
https://www.baiydu.com
接着昨天的继续谈关于微信新出的这个js框架,今天主要谈一个页面的创建到布局的详细步骤。
一.创建一个完整页面
页面你可以创建在项目的任何节点,只要你在入口文件正确引入创建该页面的路径就可使用。

上面使用红色矩形包含的目录,是我新增的目录apps,mainvc目录里面存放tabbar展示页面,sonvc存放push后展示的页面

选中firstvc文件夹鼠标右键单击会出现创建列表,点击新建--->分别创建.js .json .wxml .wxss文件

完成以上步骤,一个完整的页面就创建好了,它们的作用分别是
1.js负责页面所有控件的逻辑判断固定数据绑定。
2.json从网络请求的数据处理。
3.wxml页面布局。
4.wxml布局样式表,样式也可以直接写在布局标签的内部。sytle="",完全和tml一样。
二.入口引入该页面,tabbar增加该页面
1.引入

点击app.js入口文件,可以看到开发工具的右半部分对该页面代码的展示,一个字典格式的json数据。其中第一个key,"pages":就是用来存放引入页面的,在该节点下引入刚才我们创建的页面即可,看红圈里的 步骤2。
2.增加到tabbar
将此页面增加到tabbar中,增加到tabbar中是因为我们将此页面放到app的主界面显示,这点如果是做app开发的都应该知道。

依然是在app.js的json里配置tabbar主界面,将鼠标往下滚动,会出现上面截图的节点,tabbar主页面是以一个字典格式的json配置进去,看上图红圈里的内容。
这个节点我们放在第二个位置,所以当我们启动app时,tabbar的第二个主页面就是我们创建的这个页面了,下面看截图。

三.界面布局
布局我主要结合今天创建的界面来谈,看上面截图,微信js框架的布局样式写法和html几乎一样,不同的也许就是多了少许特性,所以你只要会css样式的编写,那么这个框架的布局应该不会很麻烦。框架的主要容器标签有三个view,scroll-view,swiper,这也是布局的重点,我今天创建的这个界面使用了其中两个标签,view和swiper,view应该是布局中使用得最多的一个布局容器标签,swiper主要是实现特效时的容器标签,比如push需要一个动画如此就用它。view在这个框架里当的使用率如同当前html中的div,但是它布局思想等同于html中的table, 行-->列方式布局,行里面可以包含列,列里面可以包含行。
1.swiper
上面截图中页面顶部的轮播使用swiper实现。 
其中属性的设置在.js中实现,看红圈里面的代码使用"{{}}"这种就是从.js中取属性值。

2.<view>容器

上面截图部分的布局方式都是用的view,假设上面截图中只有一行数据,那么就表示一行两列,中间内容部分表示在第一列中布局了三行,代码如下。
<view class="flex-wrp" style="flex-direction:row;">
<view class="flex-item bc_green"> <view class="sectionContent" >
<view class="flex-wrp" style="height: 130px;flex-direction:column;">
<view class="HeaderImageView">
<image class="image" src="../../resources/pic/1.jpg" />
</view>
<view class="NikeNameView">昵称:小明</view>
<view class="HarvestView">提现金额:99999999</view>
</view>
</view>
</view>
<view class="flex-item bc_red"> <view class="sectionContent" > <view class="flex-wrp" style="height: 130px;flex-direction:column;">
<view class="HeaderImageView">
<image class="image" src="../../resources/pic/1.jpg" />
</view>
<view class="NikeNameView">昵称:小明</view>
<view class="HarvestView">提现金额:99999999</view>
</view>
</view>
</view>
</view>
效果会是这样

在使用网络数据的时候,我们会循环这部分代码绑定数据源。
这个框架的写样式部分的代码会很少,因为每个容器或控件都是封装好样式的,所以它是一个快速开发框架,不过要开发太复杂的应用,暂时应该不适合。
整个页面样式表:
.swiper-item{
display: block;
height: 150px;
width: 1000px;
margin-top: 10px;
}
.page{
background-color:#F0F0F0;
}
.flex-wrp{
height: 130px;
display:flex;
background-color: limegreen;
}
.flex-item{
width: 50%;
height: 130px;
color: #FFFFFF;
display: flex;
justify-content: center;
border: 5px solid black;
}
.section__title
{
margin-top:10px;
font-size: 15px;
color:gray;
}
.cloumone
{
padding-left: 1px;
}
.section
{
margin-bottom: 27px;
}
.image{
width: 130rpx;
height: 130rpx;
background: blue;
position: relative;
}
.sectionContent
{
width:100%;
text-align: center;
background: green;color: white;
}
.HeaderImageView
{
height: 76px;
margin-top: 5px;
}
.NikeNameView
{
height: 20.333px;
line-height: 23.333px;
}
.HarvestView
{
height: 26.333px;
line-height: 23.333px;
font-size: 13px;
}
本人创业做的一款androidApp, 下载量已经有2000多万,各种当前热门的网络手机奖励红包全部集成,另外还有热门电影和淘宝高额优惠券!很适合各类型的用户。

微信js框架第二篇(创建完整界面布局)的更多相关文章
- 我的微信小程序第二篇
在上一篇<我的微信小程序第一篇(入门)>中,很多人问我什么是微信小程序,在这里我要说一下这个是我的失误啦,我默认大家都知道微信小程序,其实可能行内人士都知道小程序,好多非行内朋友可能平时不 ...
- Quartz基础调度框架-第二篇服务
很多应用场景Quartz运行于Windows服务 Conf 在这个基本结构里 是用来存放配置 和上一篇 控制台运行的一样的结构 jobs.xml 的配置清单 <!-- 任务配置--> & ...
- JS数据结构第二篇---链表
一.什么是链表 链表是一种链式存储的线性表,是由一组节点组成的集合,每一个节点都存储了下一个节点的地址:指向另一个节点的引用叫链:和数组中的元素内存地址是连续的相比,链表中的所有元素的内存地址不一定是 ...
- JS原生第二篇 (帅哥)
1.1 Javascript 作用 1. 网页特效 2. 用户交互 3. 表单验证 Js 就是可以用来控制 结构 和 样式 . 1.2 体验js 认识常用的三个输出语句. 都属于 ...
- JavaMail入门第二篇 创建邮件
JavaMail API使用javax.mail.Message类来表示一封邮件,Message类是一个抽象类,所以我们需要使用其子类javax.mail.internet.MimeMessage类来 ...
- Android Studio开发第二篇创建新项目
创建新项目很简单,File-New-New Project,这个没什么好说的跟Eclipse都差不都. 第二步SDK选择,有手机平板还有Wear,TV,汽车Auto,谷歌眼镜等几个种平台,这里就先选择 ...
- 轻量级ORM框架——第二篇:Dapper中的一些复杂操作和inner join应该注意的坑
上一篇博文中我们快速的介绍了dapper的一些基本CURD操作,也是我们manipulate db不可或缺的最小单元,这一篇我们介绍下相对复杂 一点的操作,源码分析暂时就不在这里介绍了. 一:t ...
- Cocos2d-x3.0游戏实例之《别救我》第二篇——创建物理世界
这篇我要给大家介绍两个知识点: 1. 创建游戏物理世界 2. 没了(小若:我噗) 害怕了?不用操心.这太简单了~! 笨木头花心贡献.啥?花心?不呢.是用心~ 转载请注明,原文地址:http://www ...
- 接口测试框架——第二篇-python读取excel文件内容
今天完善excel_module.py文件,上代码: # coding: utf-8 import xlrd class ReadExcel(): def __init__(self, file_na ...
随机推荐
- C++标准库实现WAV文件读写
在上一篇文章RIFF和WAVE音频文件格式中对WAV的文件格式做了介绍,本文将使用标准C++库实现对数据为PCM格式的WAV文件的读写操作,只使用标准C++库函数,不依赖于其他的库. WAV文件结构 ...
- 验证管理员权限(C#)
参考页面: http://www.yuanjiaocheng.net/webapi/test-webapi.html http://www.yuanjiaocheng.net/webapi/web-a ...
- ES6(块级作用域)
我们都知道在javascript里是没有块级作用域的,而ES6添加了块级作用域,块级作用域能带来什么好处呢?为什么会添加这个功能呢?那就得了解ES5没有块级作用域时出现了哪些问题. ES5在没有块级作 ...
- Android 在Android代码中执行命令行
1.路径最好不要是自己拼写的路径/mnt/shell/emulated/0/wifidog.conf 最好是通过方法获取的路径,不然可能导致命令无效 (挂载点的原因) public static f ...
- Android中的多线程断点下载
首先来看一下多线程下载的原理.多线程下载就是将同一个网络上的原始文件根据线程个数分成均等份,然后每个单独的线程下载对应的一部分,然后再将下载好的文件按照原始文件的顺序"拼接"起来就 ...
- Java 教程整理:基础、项目全都有
Java 在编程语言排行榜中一直位列前排,可知 Java 语言的受欢迎程度了. 网上有很多 Java 教程,无论是基础入门还是开发小项目的教程都比比皆是,可是系统的很少,对于Java 学习者来说找到系 ...
- ORA-00821: Specified value of sga_target 3072M is too small, needs to be at least 12896M
在测试PlateSpine克隆的数据库服务器时,由于资源有限,克隆过来的数据库服务器只给了9G的内存,结果在测试时,老是会出现OOMkiller导致宕机,即out of memory killer,是 ...
- 使用tornado,我们可以做什么?
以下介绍都是建立在python2.x的基础上面,tornado使用任意版本皆可. 如果我们需要对外提供一个http server(web api)/websocket server时,我们都可以使用t ...
- android内部培训视频_第三节(3)_常用控件(ViewPager、日期时间相关、ListView)
第三节(2):常用控件之ViewPager.日期时间相关.ListView 一.ViewPager 实例:结合PagerAdapter滑动切换图片 二.日期时间相关:AnalogClock\Dig ...
- CSharpGL(29)初步封装Texture和Framebuffer
+BIT祝威+悄悄在此留下版了个权的信息说: CSharpGL(29)初步封装Texture和Framebuffer +BIT祝威+悄悄在此留下版了个权的信息说: Texture和Framebuffe ...