微信小程序小记
微信小程序官方文档
调接口
建议封装后使用,原生方法太繁琐
// 1.原生方法调接口
const _this=this
wx.request({
url: 'http://111.111.11.11:8888/top/id',
data:{
offset:0,
limint:10
},
success:function(res){
console.log(res)
_this.setData({topMVs:res.data.data})
},
fail:function(err){
console.log(err)
}
})
添加页面
右键->新建Page->输入页面名称会自动生成四个文件
底部 tab
要在app.json中的pages中添加组件路径
在tarBar中的list中
pagePath(配置路径,在pages中要有!!!)
text(显示文字)
iconPat(当点击时它显示的图标)
selectedIconPath(点击后的图标)
组件与组件之间的跳转传值
1.子组件wxml传值:
<video-item-v1 item="{{item}}"
bindtap="handleVideoItemClick"
data-item="{{item}}">
</video-item-v1>
2.子组件js跳转:
//封装跳转处理的方法
handleVideoItemClick:function(event){
//获取每个视频的id
const id=event.currentTarget.dataset.item.id
// 跳转
wx.navigateTo({
url: '/pages/detail-video/index?id='+id,
})
}
3.父组件js中拿到值:
onLoad(options) {
const id =options.id
console.log(id)
}
显示,移除loading
wx.showNavigationBarLoading() //显示
wx.hideNavigationBarLoading() //移除
下滑刷新
要在index.json
添加
"enablePullDownRefresh": true, //添加刷新的代码
"backgroundTextStyle": "dark", //对着网页进行下拉刷新的时候的样式
删除时在index.js
中
wx.stopPullDownRefresh()
富文本
rich-text
富文本标签
修改标题栏标题
方法一
在index.json中
{
“navigationBarTitleText”: 标题栏
}
方法二
在Js文件中的 onLoad
中
wx.setNavigationBarTitle({
title: '标题栏'
});
内置
添加编译模式
编译模式可以方便我们的代码编写,可以一直去开发某个页面
代码注释
在js文件中
/**
* 注释
* @param {数据类型,例:number} id MVid
*/
使用npm工具
1.创建新终端
2.输入 npm init -y
创建package.json
文件
3.右上角->详情->本地设置->使用npm模块
4.左上角工具栏->工具->构建npm (每次安装完库都要构建一下)
5.使用时要在组件的json文件夹下的usingComponents
中进行引入
6.将 app.json 中的 "style": "v2"
去除,小程序的新版基础组件强行加上了许多样式,难以覆盖,不关闭将造成部分组件样式混乱。
hy-event-store
一个基于事件的全局状态管理工具,可以在Vue、React、小程序等任何地方使用。
1.npm安装依赖
npm install hy-event-store
2、事件总线(event-bus)
const { HYEventBus } = require('hy-event-store')
const eventBus = new HYEventBus()
const whyCallback1 = (...payload) => {
console.log("whyCallback1:", payload)
}
const whyCallback2 = (...payload) => {
console.log("whyCallback1:", payload)
}
const lileiCallback1 = (...payload) => {
console.log("lileiCallback1:", payload)
}
eventBus.on("why", whyCallback1)
eventBus.on("why", whyCallback2)
eventBus.on('lilei', lileiCallback1)
eventBus.once("why", (...payload) => {
console.log("why once:", payload)
})
setTimeout(() => {
eventBus.emit("why", "abc", "cba", "nba")
eventBus.emit("lilei", "abc", "cba", "nba")
}, 1000);
setTimeout(() => {
eventBus.off("why", whyCallback1)
eventBus.off("lilei", lileiCallback1)
}, 2000);
setTimeout(() => {
eventBus.emit("why")
eventBus.emit("lilei")
}, 3000);
3、数据共享(event-store)
const { HYEventStore } = require("hy-event-store")
const axios = require('axios')
const eventStore = new HYEventStore({
state: {
name: "why",
friends: ["abc", "cba", "nba"],
banners: [],
recommends: []
},
actions: {
getHomeMultidata(ctx) {
console.log(ctx)
axios.get("http://123.207.32.32:8000/home/multidata").then(res => {
const banner = res.data.data.banner
const recommend = res.data.data.recommend
// 赋值
ctx.banners = banner
ctx.recommends = recommend
})
}
}
})
// 数据监听
eventStore.onState("name", (value) => {
console.log("监听name:", value)
})
eventStore.onState("friends", (value) => {
console.log("监听friends:", value)
})
eventStore.onState("banners", (value) => {
console.log("监听banners:", value)
})
eventStore.onState("recommends", (value) => {
console.log("监听recommends", value)
})
// 数据变化
setTimeout(() => {
eventStore.setState("name", "lilei")
eventStore.setState("friends", ["kobe", "james"])
}, 1000);
eventStore.dispatch("getHomeMultidata")
发布流程
微信小程序后台管理
版本管理中可以看到在项目中上传的项目
成员管理可以添加测试者和使用者文章来源:https://www.toymoban.com/news/detail-461480.html
开发管理->开发设置->服务器域名 中可以配置项目中需要发送网络请求的地址文章来源地址https://www.toymoban.com/news/detail-461480.html
到了这里,关于微信小程序基本使用流程的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!