在微信小程序wxml文件调用函数实现时间转换---使用wxs模块实现

1. 创建 WXS 模块文件(推荐单独存放)

在项目目录下新建 utils.wxs 文件,编写时间转换逻辑:

js 复制代码
// utils.wxs
module.exports = {
  // 将毫秒转换为分钟(保留1位小数)
  convertToMinutes: function(ms) {
    if (typeof ms !== 'number') return '0.0'
    return (Math.round(ms / 60000 * 10) / 10).toFixed(1)
  },

  // 将秒转换为分钟(保留1位小数)
  convertSecondsToMinutes: function(seconds) {
    if (typeof seconds !== 'number') return '0.0'
    return (Math.round(seconds / 60 * 10) / 10).toFixed(1)
  }
}

2. 在 WXML 中引入 WXS 模块

在需要使用的 WXML 文件中,通过 标签引入模块:

js 复制代码
<!-- 页面.wxml -->
<wxs src="../../utils.wxs" module="timeUtils" />

<!-- 示例:显示转换结果 -->
<view>
  <!-- 转换毫秒(如 90000ms = 1.5分钟) -->
  <text>90000ms = {{timeUtils.convertToMinutes(90000)}}分钟</text>
  
  <!-- 转换秒(如 150秒 = 2.5分钟) -->
  <text>150秒 = {{timeUtils.convertSecondsToMinutes(150)}}分钟</text>
</view>

3. 直接内联 WXS 代码(可选)

如果不想单独创建文件,也可以直接在 WXML 中内联 WXS:

js 复制代码
<wxs module="timeUtils">
  module.exports = {
    convertToMinutes: function(ms) {
      if (typeof ms !== 'number') return '0.0'
      return (Math.round(ms / 60000 * 10) / 10).toFixed(1)
    }
  }
</wxs>

<!-- 调用方式相同 -->
<text>{{timeUtils.convertToMinutes(120000)}}</text>

4. 动态数据绑定(结合 JS)

如果需要转换动态数据,在 Page 的 JS 中定义数据,通过 {{}} 绑定:

js 复制代码
// 页面.js
Page({
  data: {
    durationMs: 90000, // 毫秒
    durationSec: 150   // 秒
  }
})
html 复制代码
<!-- 页面.wxml -->
<text>动态毫秒值:{{timeUtils.convertToMinutes(durationMs)}}分钟</text>
<text>动态秒值:{{timeUtils.convertSecondsToMinutes(durationSec)}}分钟</text>
相关推荐
大米饭消灭者3 天前
Taro是怎么实现一码多端的【底层原理】
微信小程序·taro
FliPPeDround4 天前
Vitest Environment UniApp:让 uni-app E2E 测试变得前所未有的简单
微信小程序·e2e·前端工程化
FliPPeDround4 天前
微信小程序自动化的 AI 新时代:wechat-devtools-mcp 智能方案
微信小程序·ai编程·mcp
吴声子夜歌4 天前
小程序——布局示例
小程序
码云数智-大飞4 天前
如何创建自己的小程序,码云数智与有赞平台对比
微信小程序
luffy54594 天前
微信小程序页面使用类似filter函数的wxs语法
微信小程序·小程序
Slow菜鸟4 天前
微信小程序开发(二)目录结构完全指南
微信小程序·小程序
攀登的牵牛花4 天前
给女朋友写了个轻断食小程序:去老丈人家也是先动筷了
前端·微信小程序
前端小雪的博客.4 天前
【保姆级教程】uniAI 插件高效开发 uni-app 微信小程序(附实战案例)
微信小程序·uni-app·ai编程·uniai
小小王app小程序开发4 天前
海外盲盒小程序抽赏玩法分析(附跨境技术落地要点)
小程序