sitemap.json
站点地图 微信搜一搜里面哪些页面可以展示,哪些不能project.config.json
项目配置app.js
全局业务逻辑app.json
全局的小程序配置app.wxss
全局的样式pages
存放页面的文件夹index
首页页面文件夹index.js
首页的业务逻辑index.json
首页的配置index.wxml
首页的模板(html)index.wxss
首页的样式(css)logs
日志页面文件夹utils
存放工具的文件夹view
块元素
text
行内元素
{{ }}
wx:if="{{ }}"
wx:elif=" "
wx:else
wx:for="{{list}}" wx:key=" index"
wx:for
自带item
index
wx:for-item="myitem"
自定义item名称
wx:for-index="myindex"
自定义修改index
名称
wxml里面:
<template name="gotoc">
<view>
<view>{{name}}</view>
<view>{{age}}</view>
</view>
</template>
<template is="gotoc" data="{{...sng[0]}}"></template>
<template is="gotoc" data="{{...sng[1]}}"></template>
<template is="gotoc" data="{{...sng[2]}}"></template>
js里面
sng:[
{name:"zsq",age:25},
{name:"hlk",age:24},
{name:"wry",age:23},
]
<import src="xxx.wxml"/>
<include src= " xxx.wxml"/>
app.json 整个小程序的配置
pages页面 配置在最前面的默认显示
window:
"window": {
"backgroundTextStyle": "light", 背景文字
"navigationBarBackgroundColor": "#f70", 导航栏背景颜色
"navigationBarTitleText": "小程序入门", 导航栏标题
"navigationBarTextStyle": "black" 导航栏文字颜色 black 和white 可选
},
input
type=" " (↓)
number
数字输入键盘text
文本输入键盘idcard
身份证输入键盘digit
带小数点的数字键盘password
是否为密码 true或falsemaxlength
最大输入长度,设置为 -1 的时候不限制最大长度image
mode
缩放模式wx.showToast({title:" "})
吐司
wx.getStorageSync(key)
获取本地存储
wx.setStorageSync(key,val)
设置本地存储
wx.request({
url:"xxx",
method:"",
success(res){
console.log(res)
}
}) //网络请求
wx.setNavigationBarTitle({
title:" 设置标题",
icon:" "
})
wx.stopPullDownRefresh({})
停止下拉刷新
wx.showLoading
开始加载
wx.hideloadind
加载结束
bindtap
轻点bindinput
表单的值是否发生改变bindfocus
输入框聚焦时触发bindblur
输入框失焦时触发bindconfirm
点击完成按钮 <view bindTap="showMsg"/>
事件的参数获取
表单 **js**
中通过 e.detail.value
其他组件
<button bindtap="ShowMsg" data-msgz="自定义吐司">自定义</button>
wx.showToast({
title:e.target.dataset.msgz,
})
onReachBottom
触底
onPullDownRefresh
下拉刷新
navigator
url=“要跳转页面的url路径”
open-type:
//跳转到其他小程序
<navigator target="miniProgram" open-type="navigate" app-id="wxb8f91a4e8d7eb4ae">打开绑定的小程序</navigator>
navigator target="miniProgram" open-type="navigate" app-id="小程序ID"
wx.switchTab({
url: '/pages/base/base',
})
wx.redirectTo({ 重定向
url: '/pages/zsq/zsq',
})
wx.navigateBack()
返回
wx.swithTab({ url:" "})
切换底部栏
//通过url传参
pages/base/base?name=zsq&age=30
"tabBar": {
"color": "#ccc", 文字颜色
"selectedColor": "#0000cd", 选中文字的颜色
"list": [
{
"pagePath": "pages/index/index", //页面路径
"text": "首页", //tabbar名称
"iconPath": "pages/images/zwpj2.png", 图片的地址
"selectedIconPath": "pages/images/zwpj.png" 选中图片的地址
},
{
"pagePath": "pages/base/base",
"text": "笑话",
"iconPath": "pages/images/res2.png",
"selectedIconPath": "pages/images/res.png"
}
]
},
onLaunch
程序启动onShow
程序切换到前台onHide
程序切换到后台onError
程序发送错误onLoad
页面加载onReady
渲染完毕onShow
显示onHide
隐藏onUnload
卸载(redirect、navigateBack触发) globalData: {
userInfo: null,
num:20
},
const app = getApp(); /*引入*/
this.setData({
num:app.globalData.num
})
//标签跳转
<navigator url="/pages/base/base" open-type="navigate">naviga</navigator>
<navigator url="/pages/base/base" open-type="switchTab">笑话</navigator>
<navigator url="/pages/zsq/zsq" open-type="redirect">没返回的</navigator>
//js跳转
Gofile1(){ //普通跳转
wx.switchTab({
url: '/pages/base/base',
})
},
Gofile2(){ //不需要返回的跳转
wx.redirectTo({
url: '/pages/zsq/zsq',
})
},
组件文件夹 cell
cell.js
cell.json
cell.wxml
cell.wxss
{
"usingComponents": {
"cell":"/components/cell/cell"
}
}
<cell></cell>
目的:组件可以嵌套
<cell><view>定义插槽内容</view></cell>
<view><slot></slot></view>
<view>
<view slot="header"></view>
<view slot="footer"></view>
</view>
<slot name="header"></slot>
<slot name="footer"></slot>
multipleSlot:true
// styleIsolation:'isolated', 样式隔离方式
// isolated 隔离
// apply-shared 页面样式分享到组件
// shared 双向共享
externalClasses:["cell-class"],
<class="cell-class">
<cell cell-class="mycell">
.mycell{height:200rpx !important;}
<cell url="xx/x/x/"></cell>
properties: {
url:{type:String,value:''},
},
this.data.url
page({})
Components({})
show
显示hide
隐藏resize
改变大小lifetimes
组件的生命周期created
创建attached
插入到页面ready
渲染完毕move
移动detached
移除error
错误var myBehavior = require('my-behavior')
Component({
behaviors: [myBehavior],
})
observers: {
'numberA, numberB': function(numberA, numberB) {
// 在 numberA 或者 numberB 被设置时,执行这个函数
this.setData({
sum: numberA + numberB
})
}
}
纯数据字段是一些不用于界面渲染的data字段,可以用于提升页面更新性能
options: {
pureDataPattern: /^_/ // 指定所有 _ 开头的数据字段为纯数据字段
},
data: {
a: true, // 普通数据字段
_b: true, // 纯数据字段
},
<button open-type="getUserInfo" ></button>
wx.login({ })
拿到一个code
信息
通过ajax
把用户信息和code
发送给服务器
appid+Appscecret+code
发送给微信服务器
得到openid
,得到session_key
openid
就是用户的唯一识别id
有了openid
,加上用户名+昵称,存入到自己的服务器的数据库中