学习小程序需要掌握些什么

一、前言
  • 小程序目前已经遍布我们的生活
  • 我们每天几乎都或多或少的会用到小程序,最常见的便是乘车二维码了
  • 因此学习下小程序
二、准备工作
三、创建项目
  • 点开微信开发者工具,选择小程序点击加号
    新建项目
  • 填写一些项目名称位置信息
    创建项目
    画圈的需要注意,大多数是默认的,路径需要先创一个空文件夹然后再选择
  • 下面来介绍一下页面的组成以及小技巧
    编辑界面
四、界面介绍
1.那么下面简单介绍一下编辑界面的组成部分
模拟器--可以直接看到我们编码的效果
编译器--编码的地方
调试器--对应浏览器的控制台
云开发--代码存在云空间(网上)
小程序模式--一般默认选择小程序模式(还有插件模式在使用插件的时候选择)
普通编辑--这里是默认显示路由,当我们在对单个页面编辑的时候可以添加一个编译模式,对应页面路径,这样编辑后显示的就是当前我们编译的页面
编译--当我们编码一部分后想看效果点击编译就可以了
左下角小圈圈里,是当前浏览页面的对应路径,点击就可以直接打开这个文件,我们浏览时发现有需要更改的页面时点击就可以直接打开不需要去找了

####2.接下来介绍一下文件组成
我们新建项目会默认生成几个文件
#####- pages–视图文件,我们所有的页面文件都放里面,小程序的页面是以文件夹来分的
pages层次
这里面每个文件夹对应着一个页面:index对应的就是首页
每个文件里的组成是
组件文件内部层次
视图组件内是四个文件,js–就是之前的js、json–组件配置文件格式是json的、wxml–对应是html、wxss–对应是css

这里重点介绍一下js内部:(wxml和wxss只有少部分变化)
// pages/zanshi/zanshi.js
Page({

  /**
   * 页面的初始数据
   */
  data: {
      // 放数据的地方
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {
      // 当页面创建第一个执行的,一开始就得执行的放这里
  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady: function () {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow: function () {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide: function () {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload: function () {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh: function () {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom: function () {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage: function () {

  }
})

这里唯一有点麻烦的便是,方法函数都是和这些初始化方法函数一样写,会比较不好找(小程序里这些组件里的文件之间是已经有连接关系的所以不需要和原生那样)

utils文件夹

这个里面是用来放我们封装的方法的
utils

app.js、app.json、app.wxss、package-lock.json简单介绍
app.js 全局js文件
//app.js
App({
  onLaunch: function () {
    // 展示本地存储能力
    var logs = wx.getStorageSync('logs') || []
    logs.unshift(Date.now())
    wx.setStorageSync('logs', logs)

    // 登录
    wx.login({
      success: res => {
        // 发送 res.code 到后台换取 openId, sessionKey, unionId
      }
    })
    // 获取用户信息
    wx.getSetting({
      success: res => {
        if (res.authSetting['scope.userInfo']) {
          // 已经授权,可以直接调用 getUserInfo 获取头像昵称,不会弹框
          wx.getUserInfo({
            success: res => {
              // 可以将 res 发送给后台解码出 unionId
              this.globalData.userInfo = res.userInfo

              // 由于 getUserInfo 是网络请求,可能会在 Page.onLoad 之后才返回
              // 所以此处加入 callback 以防止这种情况
              if (this.userInfoReadyCallback) {
                this.userInfoReadyCallback(res)
              }
            }
          })
        }
      }
    })
  },
  globalData: {
    userInfo: null
  }
})

子组件访问需要 const app = getApp(); 然后就可以直接使用全局函数或获取全局数据

app.json 全局的配置文件,路由声明,导航栏声明等都在这里设置
{  
  "pages": [
    "pages/index/index",
    "pages/test/test",
    "pages/cart/cart",
    "pages/my/my",
    "pages/yong/yong",
    "pages/youzan/youzan",
    "pages/map/map",
    "pages/canvas/canvas",
    "pages/get/get",
    "pages/zanshi/zanshi"
  ],
  "window": {
    "backgroundTextStyle": "light",
    "navigationBarBackgroundColor": "#fff",
    "navigationBarTitleText": "我的小程序",
    "navigationBarTextStyle": "black"
  },
  "tabBar":{
    "borderStyle":"black",      
    "selectedColor":"#r9r9r9",  
    "list":[
      {
        "pagePath":"pages/index/index",   
        "text":"首页",                     
        "iconPath":"./img/home.png",      
        "selectedIconPath":"./img/homing.png"   
      },
      {
        "pagePath": "pages/test/test",
        "text": "测试",
        "iconPath": "./img/home.png",
        "selectedIconPath": "./img/homing.png"
      },
      {
        "pagePath": "pages/cart/cart",
        "text": "购物车",
        "iconPath": "./img/cart.png",
        "selectedIconPath": "./img/carting.png"
      },
      {
        "pagePath": "pages/my/my",
        "text": "我的",
        "iconPath": "./img/me.png",
        "selectedIconPath": "./img/meing.png"
      }
    ]
  },
  "usingComponents": {
    "van-button": "dist/button/index",
    "van-row": "dist/row/index",
    "van-col": "dist/col/index",
    "van-popup": "dist/popup/index",
    "footer":"components/footer/Footer"
  },
  "sitemapLocation": "sitemap.json"
}

pages里的文件都需要在这里添加路径才能显示
tabBar底部导航栏,list为里面的每一项,对应都需提供组件路径
usingComponents使用组件
sitemapLocation对应的绑定微信生成的那个sitemap.json
小技巧:我们需要新增视图组件可以直接在pages后创建一条路径更改名字,编译后会自动生成对应的组件

app.wxss 全局样式 公共样式放这里
package-lock.json 我们下载组件记录存放在本文件
更多详细的介绍可以查看文档

https://developers.weixin.qq.com/miniprogram/dev/reference/

  • 4
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值