微信小顺序

事宜与自定义属性

页面跳转、参数通报与吸收

  • 页面跳转的五种体式格局

1、wx.navigateTo(obj)
2、wx.redirectTo(obj)
3、wx.switchTab(obj)
4、wx.navigateBack(obj)
5、wx.reLaunch(obj)
  • 页面间参数通报与吸收—-要领1:url带参数

//发送方:发送参数,url带参数形式发送
<navigator class="bury-wrapper wx-li" url="../detail/detail?id={{name.id}}"> 评19
</navigator>
//吸收方:吸收参数,经由过程onLoad性命周期函数中的option参数猎取参数
Page({ 
    onLoad: function(options) { 
        var duanziId = options.id 
    }
}) 
  • 页面间参数通报与吸收—-要领2:全局参数

//发送方
var appInstance = getApp();
apppInstance.pageParams.xxx = val;
//吸收方
apppInstance.pageParams.xxx;
  • 页面间参数通报与吸收—-要领3:缓存

自适应与新单元

新规划:弹性盒模子

  • 以下是微信小顺序中组件的范例

inline: <text>、<label>
inline-block: <image>、<switch>
block: <view>、<input>、<form>(form改不了display)、<swiper>
flex-direction
flex-wrap
flex-flow
justify-content
align-items
align-content
  • 容器内元素属性

order
flex-grow
flex-shrink
flex-basis
flex
align-self

Template模板引擎

  • 模板定义

  • 模板运用

1、导入模板wxml文件:<import src="/template/movie-list/movie-list-tpl.wxml"/>
2、导入模板wxss文件:@import "../../template/movie-list/movie-list-tpl.wxss";
3、运用模板:<template is="msgItem" data="{{...item}}"/>
注重:data中...有寄义,在模板文件中直接挪用item下的属性
  • 模板中嵌套模板

<import src="../movie/movie-tpl.wxml" />
<template name="movie-list">
  <view class="movie-list-container">
    <view class="movie-list-head {{colorStyle}}">
      <text>{{title}}</text>
      <view class="more">
        <text>更多</text>
        <text class="iconfont icon-right"></text>
      </view>
    </view>
    <view class="movie-list-body">
      <template is="movie" data="{{...movies[0]}}" />
      <template is="movie" data="{{...movies[1]}}" />
      <template is="movie" data="{{...movies[2]}}" />
      <!--<block wx:for="{{movies}}" wx:key="item">
        <template is="movie" data="{{...item}}"/>
      </block>-->
    </view>
  </view>
</template>

数据绑定

  • 模板

<template is="stars" data="{{stars:stars,score:average}}"/>
<template is="movie" data="{{...movie}}" />
<template is="objectCombine" data="{{...obj1, ...obj2, e: 5}}"/>
  • 页面JS

this.setData({});
  • 注重事项

如果是在异步要领挪用时才举行数据绑定,因为机遇不可控必需在页面的data:{}中先定义数据,不然失足

数据缓存

  • 限定:每一个小顺序上限10M

  • 特性:永远存储/同步与异步2种体式格局/不发起将症结信息存储

页面与APP性命周期

途径题目

  • 绝对途径(引荐)

<image src="/images/1.jpg"></image>
  • 相对途径(相对当前文件所在位置)

var util = require('../../utils/util.js');

设置

  • 全局设置(app.json

可设置五项:pages/window/tabBar/networkTimeout/debug
  • 部分设置(每一个页面对应的json文件

只可设置一项:window

援用

  • 援用wxml文件

1、import   <import src="a.wxml"/>
2、include  <include src="header.wxml"/>
  • 援用wxss文件

@import "common.wxss";   //支撑相对途径
  • 援用js文件

1、var common = require('common.js');   //require临时只支撑相对途径
2、import {Person} from "./person.js";  //es6供应的加载模块功用

下拉革新、上拉加载

  • 完成要领2种
    1、运用组件 <scroll-view>
    2、运用Page中的onPullDownRefresh()与onReachBottom()回调要领【引荐】

  • 要领2

##前期预备
在设置文件JSON中,必需开启 "enablePullDownRefresh": true

##离别完成2个回调要领
onPullDownRefresh()与onReachBottom()

Q&A

  • this.data.xxx与this.setData()的区分

动态新增/修正数据绑定:
this.data.xxx  已不能运用
只能运用 this.setData()
  • 异步与同步的区分

异步中的代码没法肯定实行机遇,而同步能够
1、异步代码易读性差
2、异步难调试
3、异步不壅塞
4、异步掌握实行机遇差,很难掌握
5、同步会壅塞(引荐同步,异步要根据营业来决议)
  • 异步挪用怎样猎取数据

注重:异步挪用体式格局不能运用同步猎取数据,不然猎取不到

解决方案:运用回调函数来猎取变量
Page({
    getBannerDate:function(id,callBack){
        wx.require({
            url:"",
            success:callBack
        });
    },
    callBack: function(res){
    
    }
});

##ES6供应了一种简化体式格局(箭头函数),不必定义多个回调函数
Page({
    getBannerDate:function(id,(res)=>{
        
    }){
        wx.require({
            url:"",
            success:callBack
        });
    }
});
  • 怎样动态设置导航栏题目

##必需在onReady性命周期要领中挪用wx.setNavigationBarTitle()要领

wx.setNavigationBarTitle({
  title: "当前页面"
});
    原文作者:104828720
    原文地址: https://segmentfault.com/a/1190000010061328
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞