zoukankan      html  css  js  c++  java
  • 微信小程序-代码构成

    QQ讨论群:785071190

    需要学会一种技术需要丛整体结构来了解,本文主要对微信小程序的代码结构做一个介绍。后期博文将对每一个知识做详细介绍。

    json、wxml、wxss、js认识

    小程序主要包含后缀是.js   .json    .wxml   .wxss的文件。

    .js文件主要完成业务逻辑并控制页面需要展现的数据,完成网络请求,用户点击事件等功能。

    .json主要完成应用配置或页面属性配置。

    .wxml类似于html,描述页面结构展示。

    .wxss类似于css,页面展示样式控制。

    image.png

    app

    app.js、app.json、app.wxss这三个文件是微信小程序真个应用的全局配置。

    小程序配置 app.json
    app.json 是对当前小程序的全局配置,包括了小程序的所有页面路径、界面表现、网络超时时间、底部 tab 等。 app.json 配置内容如下:

    {
      "pages": [
        "pages/index/index",
        "pages/logs/index"
      ],
      "window": {
        "navigationBarTitleText": "Demo"
      },
      "tabBar": {
        "list": [{
          "pagePath": "pages/index/index",
          "text": "首页"
        }, {
          "pagePath": "pages/logs/logs",
          "text": "日志"
        }]
      },
      "networkTimeout": {
        "request": 10000,
        "downloadFile": 10000
      },
      "debug": true
    }

    以上所有参数在官方文档中都有详细的介绍此处不重复编写,此处给出部分相关配置实例。官网地址(https://developers.weixin.qq.com/miniprogram/dev/framework/config.html)

    小程序应用逻辑控制app.js

    app.js包含整个应用的生命周期函数,其中数据是全局的,可以在小程序所有js中调用,其他js中只需要通过getApp()获取app对象即可调用。以下是app.js的基本结构。官网详细介绍

    App({
      onLaunch: function(options) {
        // Do something initial when launch.
      },
      onShow: function(options) {
          // Do something when show.
      },
      onHide: function() {
          // Do something when hide.
      },
      onError: function(msg) {
        console.log(msg)
      },
      globalData: 'I am global data'
    })
    小程序全局样式app.wss

    app.wss中定义的样式可在所有页面中使用。方便码农们统一定义样式。

    app.wss内容如下:

    /**app.wxss**/
    .container {
      height: 100%;
      display: flex;
      flex-direction: column;
      align-items: center;
      justify-content: space-between;
      background-color: #bfbfbf;
      padding: 200rpx 0;
      box-sizing: border-box;
    } 

    index.wxml如下使用:

    <!--index.wxml-->
    <view class='container'>
    
    </view>
    Page

    小程序页面主要包含四个文件.js、.json、.wxml、.wxss

    小程序页面Page

    小程序页面生命周期函数在.js文件中,其中包含有onLoad、onReady、onShow、onHide、onUnload生命周期函数等。官方文档

    //index.js
    Page({
      data: {
        text: "This is page data."
      },
      onLoad: function(options) {
        // Do some initialize when page load.
      },
      onReady: function() {
        // Do something when page ready.
      },
      onShow: function() {
        // Do something when page show.
      },
      onHide: function() {
        // Do something when page hide.
      },
      onUnload: function() {
        // Do something when page close.
      },
      onPullDownRefresh: function() {
        // Do something when pull down.
      },
      onReachBottom: function() {
        // Do something when page reach bottom.
      },
      onShareAppMessage: function () {
       // return custom share data when user share.
      },
      onPageScroll: function() {
        // Do something when page scroll
      },
      onTabItemTap(item) {
        console.log(item.index)
        console.log(item.pagePath)
        console.log(item.text)
      },
      // Event handler.
      viewTap: function() {
        this.setData({
          text: 'Set some data for updating view.'
        }, function() {
          // this is setData callback
        })
      },
      customData: {
        hi: 'MINA'
      }
    })

    小程序页面视图

    小程序页面编写在.wxml文件中,此处内容比较多,后期博文会对其一一介绍。官方文档

    <!--index.wxml-->
    <form bindsubmit='submit'>
    <view>用户名:</view>
    <input type='text' name="username"></input>
    <view>密码:</view>
    <input type='text' password='true' name="password"></input>
    <button form-type='submit'>登陆</button>
    </form>

    小程序页面配置json

    页面中.json文件主要是对页面标题栏,以及其他属性进行配置。官方文档

    {
      "navigationBarTitleText": "查看启动日志"
    }
    小程序页面样式wxss

    .wxss类似于css,页面展示样式控制。

    .log-list {
      display: flex;
      flex-direction: column;
      padding: 40rpx;
    }
    .log-item {
      margin: 10rpx;
    }
    




  • 相关阅读:
    spring mvc拦截器和<mvc:annotation-driven />的详解
    SpringMVC的工作流程-005
    子线程循环10次,接着主线程循环100次,接着又回到子线程循环10次,接着再回到主线程循环100次,如此循环50次-004
    简单java死锁设计002
    uwsgi手动安装时报错ValueError: invalid literal for int() with base 10: '32_1'
    flask jinja的宏
    Flask Web 开发 错误页面自定义
    Flask权限管理
    python uwsgi报错epoll_ctl(): Bad file descriptor
    linux怎么上真正的国际互联网
  • 原文地址:https://www.cnblogs.com/coder306/p/13087669.html
Copyright © 2011-2022 走看看