微信小程序wxs的使用(当页面数据渲染前添加js *** 作)

微信小程序wxs的使用(当页面数据渲染前添加js *** 作),第1张

程序的wxs功能可以让wsmxl可以调用和编写js,基本上wxs和JS无关系,只是语法形式很相似。

如下写了两个关于时间的函数,并将它们导出,

<wxs module="m1">

var getMax = function(flightDate) {

    var now = getDate()getDate();

    var flDate = getDate(flightDate)getDate();

    if( now < flDate ){

      return '+1';

    }else{

      return '';

    }

}

var formartTime = function(flightDate,format){

  if(flightDate){

    var realDate = getDate(flightDate);

    function timeFormat(num) {

      return num < 10 '0' + num : num;

    }

    var date = {

      "Y": timeFormat(realDategetFullYear()),

      "M": timeFormat(realDategetMonth() + 1),

      "d": timeFormat(realDategetDate()),

      "h": timeFormat(realDategetHours()),

      "m": timeFormat(realDategetMinutes()),

      "s": timeFormat(realDategetSeconds()),

      "q": Mathfloor((realDategetMonth() + 3) / 3),

      "S": realDategetMilliseconds(),

    };

    if (!format) {

      format = "yyyy-MM-dd hh:mm:ss";

    }

    if( format == 'hh:mm' ){

        return dateh+':'+datem;

    }else{

        return dateh+':'+datem;

    }

  }else{

    return false;

  }

}

moduleexportsgetMax = getMax;

moduleexportsformartTime = formartTime;

</wxs>

可在页面添加如下使用:

m1formartTime();  m1getMax();

utils/utilsjs

function formatNumber(n) {

n = ntoString()

return n[1]  n : '0' + n

}

/

 时间戳转化为年 月 日 时 分 秒

 number: 传入时间戳

 format:返回格式,支持自定义,但参数必须与formateArr里保持一致

/

function formatTime(number,format) {

var formateArr  = ['Y','M','D','h','m','s'];

var returnArr   = [];

var date = new Date(number  1000);

returnArrpush(dategetFullYear());

returnArrpush(formatNumber(dategetMonth() + 1));

returnArrpush(formatNumber(dategetDate()));

returnArrpush(formatNumber(dategetHours()));

returnArrpush(formatNumber(dategetMinutes()));

returnArrpush(formatNumber(dategetSeconds()));

for (var i in returnArr)

{

format = formatreplace(formateArr[i], returnArr[i]);

}

return format;

}

moduleexports = {

formatTime: formatTime

}

js

var sjc = 1488481383;

consolelog(timeformatTime(sjc,'Y/M/D h:m:s'));

consolelog(timeformatTime(sjc, 'h:m'));

注册开发者账号: >

1、小程序不是运行在浏览器中,所以没有DOM和BOM对象

2、小程序的JS有一些额外的成员

App方法 用于定义应用程序实例对象

Page方法 用于定义页面对象

getApp方法 用于获取全局应用程序对象

getCurrentPages方法 用来获取当前页面的调用栈(数组 最后一个就是当前页

wx对象 用来提供核心api的 官方链接: >

这个问题,如果条件允许,最好在后台程序中解决,在后台读取出路径数据后,立刻就分割为数组,然后把所有数据按json格式返回给小程序,小程序再把它放入page的data中,这样小程序无须大的改动就能显示了。

如果这个办法行不通,也可以在小程序获得后台返回的json数据后,先把其中的路径数据(即用:分隔的多个路径的字符串)用split分割为数组,再放入page的data中,这样小程序的wxml文件也不需要大改就能显示多个了。

如果实在懒得很,后台返回的数据一股脑的直接放到page的data中,那么还有最后的一种解决办法,就是在wxml文件中通过小程序自身的wxs语言实时分割路径字符串,比如(假定字段名为image):

<wxs module="fun">

   moduleexports = {

      imgPathSplit: function(s) {

         if (s) return ssplit(":");

      }

   }

</wxs>

然后在需要循环显示的地方加入代码(只是示例):

<image wx:for="{{funimgPathSplit(itemimage)}}" wx:key="this" mode="aspectFill" src="{{item}}"></image>

这样,在小程序渲染页面时就会实时对路径字符串进行分割,再循环显示出来。

具体情况,由于你提供的信息有限,也无法说的更多了,你自己去研究。

以上就是关于微信小程序wxs的使用(当页面数据渲染前添加js *** 作)全部的内容,包括:微信小程序wxs的使用(当页面数据渲染前添加js *** 作)、小程序时间戳转换日期问题、微信小程序(上)等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/10631683.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-10
下一篇 2023-05-10

发表评论

登录后才能评论

评论列表(0条)

保存