zoukankan      html  css  js  c++  java
  • 微信小程序在wxml双大括号中执行复杂运算

      微信小程序数据绑定支持双大括号中的表达式,但目前只支持这四种表达式:算数表达式、关系表达式、字符串连接表达式、三元表达式。vue则是全功能的JS表达式。使用起来明显差别在于是否支持函数/方法表达式

    1. 遇到的问题

    1 <!-- 有效 -->
    2   <view>{{ 1+1 }}</view>
    3   <view>{{ 2>1 ? '是':'否'}}</view>
    4  
    5   <!-- 无效 -->
    6   <view>{{ Math.random() > 0.5 ? '大于':'小于' }}</view>
    7   <view wx:for="{{'1,2,3'.split(',')}}">
    8       {{item}}
    9   </view>

    2.解决办法

     1     <view wx:for="{{fn.split(str)}}">
     2         {{item}}
     3     </view>
     4     <wxs module="fn">
     5       module.exports = {
     6           split: function(str){
     7             return str.split(',');
     8           }
     9       }
    10     </wxs>

    其他示例:

    <wxs module="fn">
          module.exports = {
              split: function(str){
                return str.split(',');
              },
              random: function(){
                return Math.random();
              }
          }
      </wxs>
      <view>{{fn.random() > 0.5 ? '大于':'小于'}}</view>
      <view wx:for="{{fn.split('1,2,3')}}">
          {{item}}
      </view>
  • 相关阅读:
    metaClass
    First-class citizen
    class-metaclass-Class vs. type
    eval-Evaluation
    编程语言:数据+算法;
    线程的关系
    线程的核心是算法,是面向过程的
    多线程与控制结构-面向过程
    线程安全-上线文-运行环境
    面向对象的语言学本质
  • 原文地址:https://www.cnblogs.com/Deaseyy/p/13378742.html
Copyright © 2011-2022 走看看