关于uni-app:uniapp过滤器兼容全平台写法

过滤器

过滤器是vue框架里格式化的性能,它十分不便,在原始的vue外面能够用于模板插值和组件属性

<div>{{ val | num(0) }}</div>
<div :id="val | num(0)"></div>

当初的小程序广泛提供了一套脚本语言能够实现雷同的性能,比方微信的wxs,百度与字节的sjs。uni-app文档给的例子外面引入了多个版本的js文件,然而兼容性仍然不够好,而且齐全不兼容html-vue框架。

<script module="utils" lang="filter" src="./utils.filter.js"></script>
<script module="utils" lang="sjs" src="./utils.sjs"></script>

其实在vue外面过滤器是注册在$options上的。依据这点,能够写出一种兼容所有平台的写法。

<!-- 模板插值与之前统一 -->
<div>{{ val | num(0) }}</div>
<!-- 属性赋值改为表达式 -->
<input :value="$options.filters.num(val, 0)"/>
<!-- 类名属性须要加上中括号 -->
<img :class="[$options.filters.num(val, 0)]"/>

评论

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

这个站点使用 Akismet 来减少垃圾评论。了解你的评论数据如何被处理