【小程序】实战商城笔记

  1. 新建页面
    在这里插入图片描述

  2. 添加tab
    在这里插入图片描述

  3. 改变头部样式
    在这里插入图片描述

  4. 引用外部样式 变量
    在这里插入图片描述

  5. 在某个压面引用组件在这里插入图片描述

  6. 小程序navigator(跳转) 标签open-type属性
    在这里插入图片描述
    注释:由于小程序页面有层数限制,目前打开的页面最多只能有 5 层

  7. index.js中的onLoad函数:页面加载时候就会运行

  8. 函数中的赋值 使用this.setData()
    在这里插入图片描述

  9. 使用wx:for时候要配套使用wx:key给每一个子项绑定一个关键字

  10. <image>标签的mode属性为widthFix时候意味着图片宽高与标签等比例

  11. 改变标签的默认宽高 换成rpx单位 达到不同屏幕自适应
    在这里插入图片描述

  12. 封装请求接口
    在这里插入图片描述
    在这里插入图片描述

  13. 多个图片同行平均宽度显示
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

  14. 如果有两层嵌套wx:for记得区分itemindex
    在这里插入图片描述

  15. 给dom绑定点击事件

//标签里
bindtap="handleItemTap"
data-index="{{index}}" //传递数据

//js
handleItemTap(e)//获取数据
  1. 如果想要获取双层数据
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

  2. 数据缓存(本地存储)

    //存储
    wx.setStorageSync("cates", { time: Date.now(),data: this.cates});
    //使用
    const Cates = wx.getStorageSync("cates");
    //时间限制(超过十秒就重新获取)
    Date.now() - Cates.time > 1000 * 10
    
  3. 切换标签页返回顶部
    在这里插入图片描述
    不能写死0 要用数据动态绑定 每次切换就赋值0

  4. 提取接口公共部分
    在这里插入图片描述
    在这里插入图片描述

  5. async语法(回调)

    async getABC(){
    	const res = await requese({url:xxx});
    	coding...//请求未完成时候是不会执行的 res即为返回结果
    }
    
    
  6. 组件的生命周期(与页面不同)
    created 组件实例化,但节点树还未导入,因此这时不能用setData
    attached 节点树完成,可以用setData渲染节点,但无法操作节点
    ready(不是onReady) 组件布局完成,这时可以获取节点信息,也可以操作节点
    moved 组件实例被移动到树的另一个位置
    detached 组件实例从节点树中移除

  7. 父子组件间的传值与调用函数
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    父组件给子组件传递参数一定要用单引号!!

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  1. 加载动画如何应对当有多个请求同时发送时候
    在这里插入图片描述

  2. 略缩文字
    在这里插入图片描述
    在这里插入图片描述

  3. 拼接数组(原来的+新获取的)

    this.setData({
          goods: [...this.data.goods,...res.data.message.goods]
        })
    
  4. 下拉刷新框

    //json文件中
      "enablePullDownRefresh":true,
      "backgroundTextStyle":"dark"
    
    //请求完成后手动关闭(在请求回调函数中加入)
    wx.stopPullDownRefresh()
    
  5. 使用阿里图标库
    class="iconfont icon-shoucang1"类名记得加上总类

  6. 弹性盒子垂直水平居中

    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    
  7. 按钮样式不好做 可以直接用view写样式然后覆盖一个等大透明按钮上去

button {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	opacity: 0;
}
  1. 给对象setData
    在这里插入图片描述

  2. 点击图片放大预览保存

    wx.previewImage({
      current, //放大的图片
      urls //滑动的图片组
    })
    
  3. 有时候穿回的数据过多可以只取需要的不需要全部去 省钱省力

  4. 封装微信的api

    	export const getSetting =()=> {
        return new Promise((resolve,reject) => {
            wx.getSetting({
                success: (result)=>{
                    resolve(result)
                },
                fail: (err)=>{
                    reject(err)
                }
            })
        })
    }
    
  5. 获取地址流程
    获取 用户 对小程序 所授予 获取地址的 权限 状态 scope

  • 假设 用户 点击获取收货地址的提示框 确定 authSetting ["scope.address"]
    scope 值 true 直接调用 获取收货地址
  • 假设 用户 从来没有调用过 收货地址的api
    scope undefined 直接调用 获取收货地址
  • 假设 用户 点击获取收货地址的提示框 取消
    scope 值 false
    • 诱导用户 自己 打开 授权设置页面(wx.openSetting) 当用户重新给与 获取地址权限的时候
    • 获取收货地址
  • 把获取到的收货地址 存入到 本地存储中
  1. onShow()onLoad()
    onShow()是样式有变化(包括data()里的数据变化)之后运行
    onLoad()是加载页面之后运行
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值