基本框架:

.wxml :页面骨架

.wxss :页面样式

.js :页面逻辑    描述一些行为

.json :页面配置

创建一个小程序之后,app.js,app.json,app.wxss是必须的,而且名字也不能随意更改,这些是作用于APP全局的,而用户创建的一些目录,这些可以看做一个个页面,这些目录下面也包含上面所说的.wxml文件,.wxss文件,.js文件,.json文件。这些文件和目录的名字是可以随意取的。有的文件不是必须的,可以参考微信小程序官方文档。如下:

就近关系:对于一个样式来说,如果既在全局里配置了,也在某个页面配置了,那么以离页面最近的样式为准。比如在全局样式表里配置文本颜色是红色,在某个页面的样式表配置了文本颜色是黑色。那么当打开这个页面的时候,文本颜色是黑色,而不是红色。这对于.json文件也是一样。

应用程序和页面之间的关系:

微信小程序允许纵向级数最高五级,后面会介绍导航组件,设置几级页面以及之间的跳转。

代码实例:

程序目录为:

app.json:

 /*app.json是全局配置文件,在这里不能随意添加注释*/
{
"pages": [
"pages/welcome/welcome" /*设置页面路径,一定要按照先后顺序来写,不然会报错。*/
                  /*会自动关联以welcome开头的所有类型文件*/ ], "window":{
"navigationBarBackgroundColor":"#b3d4db" /*设置导航栏颜色*/
} }

app.wxss:

 text{
font-family: MicroSoft Yahei; /*配置全局文本字体,通用的配置放在这里*/ }

welcome.wxml:

 <!--wxml是编写小程序骨架的文件-->
<view class="container">
<image class="userinfo-avatar"
src="/images/头像.jpeg"></image> <text class="user-name"><text style="color:red">hello</text>,morning</text>
      <!-- style="" 这样的样式可以写在wxss里,然后用class调用-->        
<!--如果是静态的样式,写在wxss里然后用class调用;如果需要动态修改样式, 用style实现-->
    <!--在<text></text> 组件之中的文本,才可以在手机上长按选中复制;text可以嵌套使用;在text里\n是换行而不是字符-->
<view class="moto-container"> <text class="moto">开启小程序之旅</text> </view> </view>

welcome.wxss:

 1 /*CSS要有一个整体布局的思想,把页面看做一个整体,然后对它进行样式的配置。而不是把一个页面中,每个部分独立分开排布。*/
2 .container{
3 display: flex; /*将容器变成弹性模型*/
4 flex-direction: column; /*列方向排列*/
5 align-items: center;    /*居中*/
6 }
7
8 .userinfo-avatar {
9 width: 200rpx; /*开发建议以iphone6,750rpx:1334rpx为例设计,单位是rpx可以自适应各种移动端分辨率。*/
10 height: 200rpx; /*设置宽,高。*/
11 margin-top: 160rpx;/*设置距离顶部的距离*/
12 }
13
14 .user-name{
15 margin-top: 100rpx;
16 font-size: 32rpx; /*字体大小*/
17 font-weight: bold; /*字体加粗*/
18
19 }
20
21 .moto-container{
22 margin-top: 200rpx;
23 border: 1px solid #405f80; /*外边矩形*/
24 width: 200rpx;
25 height: 80rpx;
26 border-radius: 5px; /*圆角矩形*/
27 text-align: center;      /*水平居中*/
28 }
29
30 .moto{
31 font-size: 22rpx;
32 font-weight: bold;
33 line-height: 80rpx; /*垂直居中,让文字高度等于容器高度*/
34 color: #405f80;
35 }
36
37 page{ /*小程序自动在页面的最外层加了一层<page></page>标签,我们的所有组件的标签都是写在
这里面的。所以,如果我们要对整个页面进行操作,需要修改page的样式。*/
  
38 height: 100%;   /*整个页面的高度*/
39 background-color: #b3d4db; /*设置整个页面的颜色,这样就算把页面向下滑动,
                    整个页面的背景也是这个颜色的。*/
40
41 }

整个页面显示如图:

7.7修改:

如果出现此报错,说明在此目录下.js文件中没有对页面进行任何配置,在老版本的开发工具中不会报错,而现在会报错,必须在.js里进行页面的配置,哪怕是空配置也可以。解决如下:

输入Page出现提示之后,按回车自动会跳出配置模板,不进行任何修改也行。

保存编译之后报错消失。

初尝微信小程序2-基本框架的更多相关文章

  1. 初尝微信小程序2-Swiper组件、导航栏标题配置

    swiper 滑块视图容器. 很多网页的首页都会有一个滚动的图片模块,比如天猫超市首页,滚动着很多优惠活动的图片,用来介绍优惠内容,以及供用户点击快速跳转到相应页面. Swiper不仅可以滚动图片,也 ...

  2. 初尝微信小程序开发与实践

    这可能是一个java程序员最不务正业的一次分享了. 小程序的火热相信不用我多说了,年初的时候老婆去浦东某达面试,甚至都被问有没有小程序测试经验.俨然小程序成为了互联网公司自PC,WAP,安卓,IOS之 ...

  3. 初尝微信小程序3-移动设备的分辨率与rpx

    屏幕尺寸就是实际的物理尺寸. 分辨率(pt),是逻辑分辨率,pt的大小只和屏幕尺寸有关,简单可以理解为长度和视觉单位. 分辨率(px),是物理分辨率,单位是像素点,和屏幕尺寸没有关系. 微信开发者工具 ...

  4. 初尝微信小程序1-特点

    微信小程序特点:1.不需要下载安装即可使用 2.用户用完即走,不用关心是否安装太多应用 3.应用将无处不在,随时可用 适合开发的小程序类型:1.简单的用完即走的应用 2.低频的应用 3.性能要求不高的 ...

  5. 用Vue.js开发微信小程序:开源框架mpvue解析

    前言 mpvue 是一款使用 Vue.js 开发微信小程序的前端框架.使用此框架,开发者将得到完整的 Vue.js 开发体验,同时为 H5 和小程序提供了代码复用的能力.如果想将 H5 项目改造为小程 ...

  6. 使用Vue开发微信小程序:mpvue框架

    使用Vue开发微信小程序:mpvue框架:https://www.jianshu.com/p/8f779950bfd9

  7. 新人学习微信小程序开发之框架篇

    大家好我是智哥,一名专注于前端领域的一名码农. 咱们今天主要来说说微信小程序, 最近一段时间微信群里的小程序,小游戏各种分享是突然一下子就爆发了,现在来看小程序作为微信的重磅功能无疑又是下一个风口.咱 ...

  8. 微信小程序(mpvue框架) 购物车

    效果图: 说明:全选/全不选, 1.数据: products:[{checked:true,code:"4",echecked:false,hasPromotions:true,i ...

  9. 微信小程序框架探究和解析

    何为框架 你对微信小程序的技术框架了解多少? 对wepy 框架进行一系列的深入了解 微信小程序框架解析和探究 小程序组件化框架WePY 在性能调优上做出的探究 开发者培训班上海专场PPT分享:小程序框 ...

随机推荐

  1. maya卸载不干净

    AUTODESK系列软件着实令人头疼,安装失败之后不能完全卸载!!!(比如maya,cad,3dsmax等).有时手动删除注册表重装之后还是会出现各种问题,每个版本的C++Runtime和.NET f ...

  2. 使用vue Devtools

    第一步: 在谷歌应用商店中查找 vue Devtools 并安装.安装之后,即使我们打开了vue项目发现vue标识是灰色的,说明并没有成功启动vue. 第二步: 默认安装的情况下,找到C:\Users ...

  3. Spring Boot实战(3) Spring高级话题

    1. Spring Aware Spring的依赖注入的最大亮点就是你所有的Bean对Spring容器的存在是没有意识的.即你可以将你的容器替换成别的容器. 实际项目中,不可避免地会用到Spring容 ...

  4. SQL内外连接的区别

    项目当中,需要将SQL server中的部分数据导入mongo中,由于SQL是关系型数据库的原因,需要联合多表进行查询,因此,了解了下SQL中内外连接的相关概念,以作备注: 1.内联接(典型的联接运算 ...

  5. VS Code Plugins And Configuration

    VS Code插件 vscode-icons: 显示文件类型的图标 project manager: 管理项目, 项目的保存加载与切换 beautify: 控制缩进 code runner: 执行代码 ...

  6. java 模拟实现消费者和生产者问题

    题目要求 用java代码模拟实现:一个人不断往箱子里放苹果,另一个人不断从箱子里取苹果,箱子只能放5个苹果,苹果数量无限.要求不使用java.util.concurrent包中的类. 思路 这道题主要 ...

  7. jq中事件绑定的方法

    在唯品会实习生面试中,被面试官问了这么一个问题,“jQuery中绑定事件的方法有几个?”,以click事件为例,我当时想到的只有.click(),.bind(),.on()这三种,然后面试官又追问,“ ...

  8. Python中基本数据类型与对字符串处理的方法

    一.基本数据类型(int,bool,str) 1.基本数据类型: int 整数 整数 str字符串  一般不用来存放大量的数据 bool布尔值 用来判断(True,False) list 列表.用来存 ...

  9. Angular搭建脚手架

    1.安装CLI: cnpm install -g @angular/cli //卸载: npm uninstall -g @angular/cli   npm cache clean 2.检测是否成功 ...

  10. 什么是TOPO学

    拓扑,一个跟门萨同样古怪的“科技Word”.其定义,对绝大多数读者而言,不一定需要理解,但无妨知道———拓扑学,数学的一门分科,研究几何图形在一对一的双方连续变换下不变的性质.不少门萨题,来自拓扑学, ...