实训项目1我的新闻——新闻随身看【学习目标】
(1) 了解牛道云平台的原理、功能和特点。
(2) 掌握牛道云平台开发Web App和小程序的完整过程。
(3) 掌握“上中下布局”“标题栏”和“外部页面”组件的功能及用法。
(4) 掌握组件的基础属性和样式属性。
(5) 掌握牛道云平台进行Web App和小程序的预览和发布流程。
学习路径
项目描述
腾讯新闻是知名的新闻网站,网址为https://xw.qq.com/。本项目设计新闻随身看的App和小程序: 通过嵌入腾讯新闻的网址,制作移动端新闻App和小程序,实现新闻的随身浏览。
1.1App与小程序的区别
App是英文Application的简称。由于智能手机的流行,App作为智能手机的第三方应用程序,原来只能使用原生代码开发基于iOS、Andriod等系统的原生App,后期随着HTML5(以下简称H5)的飞速发展,基于H5的混合模式App也得到了普及应用。
小程序可以缩写为XCX,英文名称为Mini Program,不需要下载安装即可使用,用户通过扫一扫或搜索即可打开应用。小程序占据内存小,同时可以实现一些功能相对简单、交互相对简洁的需求。轻快,用完即走,无须下载,具有推广形式多样化、速度快、可线上线下联动营销的特点。小程序嫁接微信超10亿月活用户,其应用场景给人以无限的遐想空间。
在牛道云平台上,用户无须编程即可轻松制作小程序和App,制作方式大体相同,部分组件的使用方法略有差异。表11列举了App与小程序的一些区别。表11App与小程序的区别
区别App小程序下载从应用商店(如 App Store)里下载通过微信(扫描二维码、搜索)获得安装安装在手机内存中不需要安装占用空间一直存在手机中占用空间不需要安装,几乎不占用内存空间机会市场中各种用途的App应有尽有还有很多用途的小程序待开发发布安卓App有很多应用商店,需要向这些应用商店提交审核,上架App只需提交到微信公众平台进行审核用户群面向所有智能手机用户,截至2018年约19亿台智能手机面向所有微信用户,约10亿人推广难度需要用户下载程序包,并安装在手机上,较难推广通过二维码、微信搜索等方式获得,较易推广在牛道云平台中有“制作小程序/App/公众号”和“制作App/H5”两个入口。从“制作小程序/App/公众号”入口进入,不仅可以制作小程序,还可以在发布过程中生成App的安装文件,以及生成公众号的链接地址,可谓一举三得。
1.2牛道云平台介绍
牛道云平台是北京起步科技股份有限公司推出的一站式开发云平台,集制作、开发、测试、部署及运维于一体,支持开发各种类型的应用,包括小程序、App、公众号、PC应用、电视应用及企业应用。该平台支持一次开发,多端任意部署,实现敏捷开发。同时支持开发多端应用,共享数据和服务。不仅支持个人开发,还支持团队开发。
牛道云平台提供以下功能。
(1) 使用大量精美的应用模板,典型应用场景可直接套用,轻松配置就可以投入运行。
(2) 用户可以选择自己定制开发,也可以在牛道云平台的众包平台上发布软件需求,委托第三方进行软件设计。
(3) 设计过程中可以随时预览软件运行效果,移动应用还可以通过手机扫码直接进行真机调试运行。
(4) 有丰富的功能组件和页面模板,结合强大的可视化设计工具,无须编程经验,也可以制作出复杂的软件功能。
(5) 启用设计工具的开发模式,开发人员可以直接在线编程,深度扩展软件功能。
(6) 应用设计完成后,可以一键式部署到测试环境,对软件进行集成测试。
(7) 用户可以选择购买主机或者托管主机,一键式自动部署到正式运行环境;同时支持下载部署资源,完全私有化部署。
(8) 应用部署后,牛道云平台还会自动生成应用的后端管理控制台,让最终用户的管理员实现轻松运维。
1.3页面
一个应用可分为后端服务和前端页面两大部分。前端页面负责展现用户界面,实现和用户的交互。良好的用户体验图11页面制作范畴
是前端页面制作的目标。
前端页面制作涉及如图11所示的内容,页面由组件搭建形成,可以快速构建页面;组件实现全配置,制作者不写代码也可以实现页面逻辑。
应用展示给使用者的是一个个的页面。页面是一个相对独立、可复用的界面展现和交互单元,主页是特殊的页面,是应用运行后显示的第一个页面,如图12所示。在页面中可以打开其他页面,在打开其他页面的同时可以传递参数,供被打开页面使用。页面间也可以共享数据。
页面由3部分构成,如图13所示。
图12页面间可以相互调用
图13页面构成
(1) 页面展现: 定义页面的展现,由若干组件构成,存储为W文件。
(2) 页面逻辑: 定义页面逻辑功能,存储为W文件同名的JS(JavaScript)文件。
(3) 页面样式: 定义页面样式,只作用于当前W文件中的界面元素,存储为W文件同名的CSS文件。
1.4组件
页面是由一个个组件构成的,组件既可以是一个以图形化方式显示在屏幕上并与用户进行交互的对象,如“输入框”组图14组件属性
件,也可以是一个没有展现而仅有逻辑功能的组合,为其他组件提供服务,如“数据集”组件。组件是对数据和方法的封装,有自己的基础属性、样式、事件和操作等属性,如图14所示。组件的属性在页面制作区右侧的属性栏中进行设置。
组件根据功能分为4类,分别是展现组件、数据组件、服务组件和功能组件。在设计区添加展现组件后,展现组件显示在设计区中,添加数据、服务和功能组件后,这些组件显示在“数据|服务|功能”组件容器中,这个容器为了不遮挡设计区中的展现组件,一般最小化为一个浅黄底色的小方块,显示在设计区内,位置可以随意移动。单击这个小方块,即可展开,显示其中的数据、服务和功能组件。
为了便于制作,牛道云平台不仅提供了布局组件、内容组件、表单组件和高级组件4类系统组件,还提供了大量具有生态环境的市场组件。
1.4.1“上中下布局”组件
“上中下布局”组件默认自动充满父容器,分为上、中、下3个区域,每个区域都可以设置背景色,App和小程序中名称有区别,如图15所示,本小节以小程序为例。其中,“面板头部”固定显示在页面顶部,“面板底部”固定显示在页面底部,“面板内容”自动充满剩下的区域。当“面板内容”超出“面板内容”区域的高度时,可以通过滑动查看下面的内容,此时“面板头部”和“面板底部”固定不动,仅“面板内容”区域中的内容上下滚动。
图15小程序和App中的“上中下布局”组件
1. 添加/ 删除面板头部区域、底部区域
“上中下布局”组件内部有“面板头部”“面板内容”“面板底部”3个区域,必须有的区域是“面板内容”,“面板头部”和“面板底部”可有可无。添加“面板头部”的方法是: 选择“上中下布局”组件,单击属性栏设置区域的“添加头部区域”按钮,即可添加“面板头部”。删除“面板头部”的方法是: 选中“面板头部”,右击,在快捷菜单中选择“删除”命令,即可删除“面板头部”。“面板底部”的操作和“面板头部”相同。
2. 基础属性
“上中下布局”组件中的“面板头部”和“面板底部”各提供了1个基础属性: 高度,用来设置“面板头部”和“面板底部”的高度,默认为48px。
3. 事件
“上中下布局”组件及其内部3个区域都提供了两个事件: 点击事件和长按事件。在其内部区域添加其他组件后,在这些组件上点击或长按,都会触发这些事件。
4. 样式
“上中下布局”组件提供了1个特有样式: 常用布局,用来设置组件的显示方式。可选项为全屏显示和非全屏显示。
1.4.2App“标题栏”组件
“标题栏”组件通常用在App页面的头部,显示页面的标题及页面中的常用功能按钮。组件内部分为3个区域: 标题、标题栏左边区域、标题栏右边区域,如图16所示。
图16“标题栏”组件
1. 基础属性
“标题栏”组件的标题区提供了1个基础属性: 文本,用于设置显示的标题文本。
2. 样式
“标题栏”组件的标题区提供了1个样式: 宽度占比,用于设置标题区的宽度,剩余宽度由左右区域均分。
在小程序中,页面自带导航栏标题,通过设置导航栏标题的相关属性,可达到与App标题栏一样的效果。
1.4.3App“外部页面”组件
App“外部页面”组件用于显示非本项目中的页面,通过设置外部网页的网址,即可显示网页的内容。
1. 基础属性
App“外部页面”组件提供了3个基础属性。
(1) 页面URL: 用于设置静态的外部页面的网址。
(2) 动态URL: 用于设置动态的网址,即网址可以通过字符串拼接形成。
(3) 显示边框: 设置是否显示边框。
2. 样式
App“外部页面”组件提供了2个样式。
(1) 宽度: 用于设置外部页面显示的宽度,如需充满父容器的宽度,应设置为100%。
(2) 高度: 用于设置外部页面显示的高度,如需充满父容器的高度,应设置为100%。