小程序一些知识点

本文参考自: 原文地址

本人安卓出身,前段时间公司搞小程序,反正安卓不太忙,帮着大家一些弄弄。总结了一些小方法,写的不好,仅供参考。不足之处多见谅。
1,转跳界面
(1) wx.navigateTo(OBJECT)
  这个接口是跳转到一个应用内的某个页面,但是,保留着当前页面,
(2) wx.navigateBack(OBJECT)
关闭当前页面,返回上一页面或多级页面。可通过 getCurrentPages() 获取当前的页面栈,决定需要返回几层。
(3) wx.redirectTo(OBJECT)
  关闭当前页面,跳转到应用内的某个页面。
接口wx.redirectto与wx.navigateTo的OBJECT 参数相同,
  这两个接口里面的路径url后可以带参数,例如:
  wx .redirectTo({
  url: 'test?id=1'
})
 
2,转跳界面,赋值并且接收参数
  bindViewTap: function() {
    wx.navigateTo({
      url: '../logs/logs?name=hello
url: '../../commute_tq/?cjr=' + a + "&lxr=" + rt//多个参数传递
    })
  },
接收参数
Page({
  data: {
    nickname:'default',
    logs: []
  },
  onLoad: function (query) {
    this.setData({
      nickname:query.name
    });
  }
})

3,换行
var a =  "7777"
var b =  "555"
var initData = a+"\n"+b;
4,更改text赋值
(1)在data里定义一个参数
data: {
text: initData
},
(2)可以给他赋值,也可以不赋值
var initData = a+"\n"+b;
(3)调用方法
add:  function (e) {
this.setData({
text: initData="741"//赋值操作
}) },
(4)xml文件。
<text>{{text}}</text>

5,获取input的值
XML文件:
<input class='create-title' placeholder="投票标题" bindinput="voteTitle"></input>
js文件不能写在data里,要写在data之外
voteTitle: function (e) {
console.log( "888" + e.detail.value);
},
(5.1) 更改添加  input 的值
< input  class= "fl"  type= 'text'  bindinput= "people_name"  value =  "{{bannername}}">  </ input >

6,js时间戳转换
  viewtap: function () {
    console.log("1231233");
    this.setData({ motto:"233"})
    console.log(utils.formatOnlyTime(new Date(4800000)));
    // 1486084800000
    console.log(utils.formatTime(new Date(1486084800000)));
    console.log(utils.formatOnlyDate(new Date(1486084800000)));
  }
  const formatOnlyTime = date => {
  const year = date.getFullYear()
  const month = date.getMonth() + 1
  const day = date.getDate()
  const hour = date.getHours()
  const minute = date.getMinutes()
  const second = date.getSeconds()
  return [hour, minute, second].map(formatNumber).join(':')
  // return [year, month, day].map(formatNumber).join('/') + ' ' + [hour, minute, second].map(formatNumber).join(':')
}
const formatOnlyDate = date => {
  const year = date.getFullYear()
  const month = date.getMonth() + 1
  const day = date.getDate()
  const hour = date.getHours()
  const minute = date.getMinutes()
  const second = date.getSeconds()
  return [year, month, day].map(formatNumber).join('/')
  // return [year, month, day].map(formatNumber).join('/') + ' ' + [hour, minute, second].map(formatNumber).join(':')
}

  formatOnlyTime: formatOnlyTime,
  formatOnlyDate: formatOnlyDate

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



7,引用js文件
(1)引入本地json数据,这里引入的就是第一步定义的json数据 
(2)var postData = require('../../data/posts-data.js');
   
8,返回父界面并传值
(1)子界面的js
//获取页面栈  
let pages = getCurrentPages();
//上一个页面实例对象  
let prepage = pages[pages.length -  2];
//把得到的值回调给上个界面
prepage.setData({
phone: cjrphone.toString(), //传递参数,随便写
});
//返回到上一个界面
wx.navigateBack({
})
(2)父界面的on show()方法
onShow: function () {
newname =
var phone = this.data.phone.toString();//获取差参数
var len = phone .length;
if (len >  0) {
this.setData({
bannerphone: phone  ,//赋值
}); } },
(3)data方法
phone: "",//一定要有phone这个参数


9,刷新父界面
(父界面)
Page ( { data : { name : '' }, ... , //更新name changeData : function (name) { this . setData ( { name : name } ) } } )
(子界面)
Page ( { //此方法用于文本框输入回调 inputTyping : function (e) { //获取页面栈 var pages = getCurrentPages () ; if ( pages . length > 1 ) { //上一个页面实例对象 var prePage = pages[ pages . length - 2 ] ; //关键在这里 prePage . changeData ( e . detail . value ) } } } )

10,input
右对齐的 
<input type="text" style="background:'#efefef'; text-align:right" readonly value="this" /> 
只读的input 
<input type="text" name="nodeCode" readonly value="<%=functionNodeForm.getNodeCode()%>" style="background:'#efefef'" />
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值