0%

mini-pro-Note2

“我的页面”

./ 表示同级目录

媒体组件 image 属性

image 链接语句:

1
src="{{userInfo.head_img1?userInfo.head_img:'/image s/default_head_circle.png'}}"

如果 storage当中获取到 userInfo.head_img,则打印出 userInfo.head_img,反之 则打印 image 文件中的 default_head_circle.png 图片

WXSS属性

rpx(responsivepixel): 可以根据屏幕宽度进行自适应。


userinfo 的值是通过向后台访问请求,获取到的用户信息,并存在本地, 然后从本地读取出来进行赋值。请求的代码写在 app.js 中。myinfo.js 文件的 data 数组中定义 userinfo,并在 onLoad 函数中对 userinfo变量进行赋值。

bindchange检测输入框中的文字变化,bingchange=”changeName”,”changeName”函数写在js中,与data同级

1
2
3
4
5
6
7
8
9
data: {
name:''
},

changeName:function(e){
this.setData({
name: e.detail.value
})
},

bindtap:按键的事件处理函数

报错:app is not defined;

解决:js文件Page同级,Page前面增加:

1
const app = getApp()

我的页面的样式选择的是带说明、跳转的列项表,用到了 navigator 组件。

change页面

valuechange 函数

submit 函数

onLoad函数只有在重新编译或者关闭该页面重新打开时才会执行,onShow 函数的作用是
监听页面显示,会在页面每次显示时执行。

wx.showToast()弹窗

配置文件:所有的 wx.request()请求,url 的网址都有很多共同之处,所以把共同之
处作为一个宏进行定义,后面维护起来方便修改与迁移。增加config.js(与app.js同级)

userUrl: `${apiUrl}/User/`

model.export = config 接口暴露

例如在app.js中使用配置文件的数据时:

1
const wxUrl = require('./config.js').wxUrl

model.export = config 接口暴露

报错:Setting data field “value” to undefined is invalid.

解决:可能是与后台命名不一致的问题

课程模块

访问链接向后台申请课程号,响应结果:课程号创建成功,课程号:10853

报错:getLocation需要在app.json中声明permission字段

解决:在app.json中增加以下代码

1
2
3
4
5
"permission": {
"scope.userLocation": {
"desc": "你的位置信息将用于小程序位置接口的效果展示"
}
},

做题模块

要在 app.json 文件中加上对应的所有页面路径

url链接里面不能存在空格

如果因为this.setData()使用次数过多而报错,可以使用:

1
2
var that = this;
that.setData(that.data);

data数组中部分大小写,触发函数的返回值中都是小写,所以在使用返回值进行赋值时使用小写。

签到测距模块

wx.chooseLocation()

wx.getLocation()

buttonde disabled属性

JS实现经纬测距

let 只能在一块(即一个{}中的区域叫做一个块域)中使用定义过的变量,可以是用 var 来定义变量,因为 var 是全局变量,跳出 for 循环以后还是可以使用,还有 const 用来定义常量,使用时必须初始化(即必须赋值),只能在块作用域里访问,跳出块也不能访问变量,而且不能修改。

成功回调函数里面默认this是指成功回调函数里的this而不是与函数同级的data数组,解决方案:在回调函数外面定义var that = this,在回调函数中可以使用that,或者,改变回调函数的定义,使用success: (res) => {…}

保留到小数点后三位:

1
2
var s = ...
s = s.toFixed(3)

后台与数据库

采用 wampserver 即 Windows、Apache、 MySQL 和 PHP 的集成环境,搭建本地环境

tableBar跳转失效:

1
2
3
wx.redirectTo({
url: '../index/index',
})

解决方法:使用:

1
2
3
wx.switchTab({
url: '../index/index',
})

后台向前台返回值使用ajaxReturn

后台使用I()方法获取前台传来的值

后台通过M()方法实例化数据库(M()使用驼峰命名法,因此数据库表名中的下划线需要修改)

1
2
3
4
5
6
7
$model = M("Column");
//创建一个Column模型,对应数据库中的Column表,如果有前缀就是 前缀_Column表

$columninfo = $model -> field("pid,image")->where("id=".$pid) -> find() ;
//设定查询字段为 pid 和 image,条件是 id=$pid
//find()方法是找出一条数据
//$columninfof是一个数组返回值,起结构为 array('pid'=>"***",'image'=>"***")

API开发与云平台使用

带餐返回的值储存在option里面

课程号创建成功,课程号:10016

云开发(使用JSON数据库)

关系型数据库和JSON数据库:

关系型 文档型
数据库database 数据库database
表table 集合collection
行row 记录record/doc
列column 字段field