第二章总结

小程序的基本目录结构

主体文件

pages:目录中又2个子目录,分别是index和logs,每个子目录中保存着一个页面的相关文件。

utils:目录用来存放一些公共的.js文件。

app.js:小程序逻辑文件,主要用来注册小程序全局实例。

app.json:小程序公共设置文件,配置小程序全局设置。

app.wxss:小程序住样式表文件,类似HTML的.css文件。

页面文件

index.json:页面配置文件。

index.js/ts:页面逻辑文件,用控制代码逻辑。

index.wxml:页面结构文件,用来设置布局。

index.wxss:页面样式文件,用来调整页面样式。

小程序的开发框架
视图层:(wxml(结构)、wxss(样式))这俩文件决定了看到什么东西,看到这东西长啥样。

逻辑层:用于处理事务逻辑。对小程序而言逻辑层就是所有.js脚本文件的集合。

数据层:1.页面临时数据或缓存        2.文件存储(本地存储)        3.网络存储与调用

创建小程序页面

新建文件

设置文件名并创建相应文件

配置文件
1.pages配置项:pages 配置项接受一个数组,用来指定小程序由哪些页面组成,数组的每一项都是字符串,代表对应页面的“路径”+“文件名”。pages配置项是必填项。设置pages配置项时,应注意以下3点:
(1)数组的第一项用于设定小程序的初始页面。
(2)在小程序中新增或减少页面时,都需要对数组进行修改。
(3)文件名不需要写文件扩展名。小程序框架会自动寻找路径及对.js、.json 、.wxml 和.wxss文件进行整合数据绑定。

 app.json配置:

{
"pages":[
"pages /news /news " ,
"pages/index/index"
]
}

2.window配置项:

在app.json中设置window配置项

"window":{
    "navigationBarBackgroundColor":"#fff",
    "navigationBarTextStyle":"black",
    "navigationBarTitleText":"小程序window功能演示",
    "backgroundColor":"#ccc",
    "backgroundTextStyle":"light"
  }

3.tabBar配置项:

3.1.tabBar中list选项:

在app.json中设置tabBar配置项:

"tabBar": {
    "list": [{
      "pagePath": "pages/logs/logs",
      "text": "text",
      "iconPath": "images/pp1.jpg",
      "selectedIconPath": "images/pp1.jpg"
    },{
      "pagePath": "pages/news/news",
      "text": "text",
      "iconPath": "images/pp2.jpg",
      "selectedIconPath": "images/pp2.jpg"
    }
  ]
  }
}

4.networkTimeout配置项:

5.debug配置项:dobug配置用于开启开发者工具的调试模式,默认为false。

逻辑层文件

项目逻辑文件

项目逻辑文件app.js中可以通过App()函数注册小程序生命周期函数、全局属性和全局方法,已注册的小程序实例可以在其他页面逻辑文件中通过getApp()获取。

项目逻辑文件配置项:

页面逻辑文件

页面逻辑文件主要功能有:

1.设置初始数据;

2.定义当前页面的生命周期函数;

3.定义事件处理函数;

4.使用setData更新数据

页面逻辑文件配置项:

页面结构文件

数据绑定

小程序在进行页面数据绑定时,框架会将WXML文件与逻辑文件中的data进行动态绑定,在页面中显示data中的数据。

1.简单绑定:

简单绑定是指使用双大括号( { { } } )将变量包起来,在页面中直接作为字符串输出使用。简单绑定可以作用于内容、组件属性、控制属性等的输出。

news.wxml文件

//wxml
<view>姓名:{{name}}</view>
<view>年龄:{{age}}</view>
<view>出生日期:
{{birthday[0].year}}年
{{birthday[1].month}}月
{{birthday[2].date}}日
</view>

news.js文件

Page({
data:{
  name:"小陈",
  age:"4",
  birthday:[{year:2020},{month:1},{date:18}],
  object:{hobby:"computer"},
  num:100,
  students:[
        {nickname:"小明",height:180,weight:150},
        {nickname:"小红",height:160, weight:100}
      ]
}
})

2.运算:

在{ { } }内可以做一些简单的运算(主要有算数运算、逻辑运算、三元运算、字符串运算等),这些 运算均应符合JavaScript运算规则。

 <view>算术运算:{{age+num}}</view>
    <view>逻辑运算:{{age==40}}</view>
    <view>三元运算:{{age==30?'happy':'nohappy'}}</view>

条件数据绑定

1.wx:if条件数据绑定:

    <view wx:if="{{age>40}}">1</view>
    <view wx:elif="{{age==40}}">0</view>
    <view wx:else>-1</view>

2.block wx:if条件数据绑定:

当需要通过一个表达式去控制多个组件时,可以通过<block>将多个组件包起来,然后在<block>中添加wx:if属性即可

<block wx:for="{{student}}">
<view>
<text>{{index}}</text>
<text>{{item.name}}</text>
<text>{{item.age}}</text>
<text>{{item.hobby}}</text>
</view>
</block>
列表数据绑定

1.wx:for

在组件上,可以使用wx:for控制属性绑定一个数组,将数据中的各项数据循环进行数据绑定到该组件下

//js
 
  students:[
        {nickname:"小明",height:180,weight:150},
        {nickname:"小红",height:160, weight:100}
      ]
 
 
//wxml
 
   <view wx:for="{{students}}">
    <text>姓名:{{item.nickname}}</text>
    <text>身高:{{item.height}}</text>
    <text>体重:{{item.weight}}</text>
    </view>

2.bolck wx:for

与block wx:if类似,在wxml中也可以使用<block>包装多个组件进行列表数据绑定。

模板

1.定义模板

<template name="模板名">
</template>

2.调用模板

//wxml
<template name="nmd">
<view wx:for="{{students}}">
<text>姓名:{{item.nickname}}</text>
<text>身高:{{item.height}}</text>
<text>体重:{{item.weight}}</text>
</view>
</template>
<template is="nmd" data="{{students}}"></template>
引用页面文件

 1.import方式:

//a.wxml
<template name="item">
<text>{{item.name}}</text>
<text>{{item.age}}</text>
</template>
//b.wxml
<import src="a.wxml"/>
<template is="item" data="{{student}}"/>

2.include方式:

//aa.wxml
<text>{{item.name}}</text>
<text>{{item.age}}</text>
//bb.wxml
<include src="aa.wxml"/>
<text>{{item.hobby}}</text>
页面事件

1.定义事件函数:在.js文件中定义事件函数来实现相关功能,当事件响应后就会执行事件处理代码。

2.调用事件:用事件也被称为注册事件。调用事件就是告诉小程序要监听哪个组件的什么事件,通常在页面文件中的组件上注册事件。

3.冒泡事件:冒泡事件是指某个组件上的事件被触发后,事件会向父元素传递,父级元素再向其父级元素传递,一直到页面的顶级元素。

4.非冒泡事件:非冒泡事件是指某个组件上的事件被触发后,该事件不会向父节点传递。在wxml中,冒泡事件有6个:

页面样式文件

页面样式文件(WXSS)是基于CSS拓展的样式语言,用于描述WXML的组成样式,定WXML的组件如何显示。WXSS具有CSS的大部分特性,小程序对WXSS做了一些扩和修改。

wxss常用属性:

  • 36
    点赞
  • 45
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值