首先需要注意的是 wxml的这些属性将要被废弃,不过可以看两眼。不愿意看的可以看下一章节同样是操作回馈只不过是js版的哦。
 
一、action-sheet 操作菜单
从屏幕底下出来菜单。
这里不用w3c的代码了,他给的例子是闭包。麻烦而且新手不好理解。事实上真正写代码的时候,至少在这个地方不会用到闭包。
/* ---page/test/test.wxml----*/
 
<button type="default" bindtap="actionSheetTap">弹出菜单选项</button>
<action-sheet hidden="{{actionSheetHidden}}" bindchange="actionSheetChange">
    <action-sheet-item bindtap="item1">选项一</action-sheet-item>
    <action-sheet-item bindtap="item2">选项二</action-sheet-item>
    <action-sheet-cancel class="cancel">取消</action-sheet-cancel>
</action-sheet>
 
/* ---page/test/test.wxml----*/
/* ---page/test/test.js----*/
 
Page({
  data: {
    actionSheetHidden: true,  //设置选项框是否显示
  },
  totoSheet: function(){
    //当选项卡隐藏则打开,打开时则隐藏
    this.setData({
      actionSheetHidden: !this.data.actionSheetHidden
    })
  },
  actionSheetTap: function(e) {
    this.totoSheet();
  },
  actionSheetChange: function(e) {
    this.totoSheet();
  },
  item1:function(){
    console.log("我是第一个选择项");
    this.totoSheet();
  },
  item2:function(){
    console.log("我是第二个选择项");
    this.totoSheet();
  }
})
 
/* ---page/test/test.js----*/

这里自己写了一个totoSheet方法。当我点击选项一的时候 它提示一段代码之后隐藏菜单。当然里面还可以写一些跳转页面的操作。要注意的就是action-sheet-cancel点击

不是自动隐藏 ,而是需要自己设置 binchange 属性的。
属性名 类型 默认值 说明
hidden Boolean true 是否隐藏
bindchange EventHandle
 
点击背景或action-sheet-cancel按钮时触发change事件,不携带数据

二、modal 对话框

熟悉js+html的童鞋可以把他看作是一个加强版的 alert 。那么开始贴代码。因为没啥重点所以还是贴 W3C的代码。
/* ---page/test/test.wxml----*/
 
<modal title="标题" confirm-text="confirm" cancel-text="cancel" hidden="{{modalHidden}}" bindconfirm="modalChange" bindcancel="modalChange">
    这是对话框一的内容。
</modal>
 
<modal class="modal" hidden="{{modalHidden2}}" no-cancel bindconfirm="modalChange2">
    <view> 没有标题没有蒙层没有确定的modal </view>
    <view> 内容可以插入节点 </view>
</modal>
 
<view class="btn-area">
    <button type="default" bindtap="modalTap">点击弹出modal</button>
    <button type="default" bindtap="modalTap2">点击弹出modal2</button>
</view>
 
/* ---page/test/test.wxml----*/
/* ---page/test/test.js----*/
 
Page({
  data: {
    modalHidden: true,
    modalHidden2: true
  },
  modalTap: function(e) {
    this.setData({
      modalHidden: false
    })
  },
  modalChange: function(e) {
    this.setData({
      modalHidden: true
    })
  },
  modalTap2: function(e) {
    this.setData({
      modalHidden2: false
    })
  },
  modalChange2: function(e) {
    this.setData({
      modalHidden2: true
    })
  },
})
 
/* ---page/test/test.js----*/

首先看一下 对话框一。。这里他的例子用了两个值。confirm-text 可以把他看作一个确定按钮。而cancel-text按钮则可以看做取消。

bindconfirm 则可以看作 点击确认需要执行的方法。bindcancel则可以看做取消的执行方法。
在看 对话框二的 no-cancel 属性 证明这个对话框只有 一个确认按钮。则没有取消按钮。
属性名 类型 默认值 说明
title String
 
标题
hidden Boolean false 是否隐藏整个弹窗
no-cancel Boolean false 是否隐藏cancel按钮
confirm-text String 确定 confirm按钮文字
cancel-text String 取消 cancel按钮文字
bindconfirm EventHandle
 
点击确认触发的回调
bindcancel EventHandle
 
点击取消以及蒙层触发的回调

三、toast 消息提示框

他的作用也很简单 , 比如用微信支付成功的时候都知道他会提示一个支付成功的框框,会有很好的用户体验。以及等等等等。
这里同样不用W3C的代码。
/* ---page/test/test.wxml----*/
 
<toast hidden="{{toast1}}" bindchange="toast1Change">默认(1500毫秒消失)</toast>
<toast hidden="{{toast2}}" duration="500" bindchange="toast2Change">500毫秒后消失</toast>
 
<button type="default" bindtap="toast1Tap">点击弹出默认toast</button>
<button type="default" bindtap="toast2Tap">点击弹出设置duration的toast</button>
 
/* ---page/test/test.wxml----*/
/* ---page/test/test.js----*/
 
Page({
    data : {
      toast1 : true,
      toast2 : true,
    },
    toast1Tap : function(){
      this.setData({
        toast1 : false
      })
    },
    toast2Tap : function(){
      this.setData({
        toast2 : false
      })
    },
    toast1Change:function(){
      this.setData({
        toast1 : true
      })
    },
    toast2Change:function(){
      this.setData({
        toast2 : true
      })
    }
 
})
 
/* ---page/test/test.js----*/

需要注意的是 bindchange这个属性。。当我点击button的时候。toast设置了显示。但是过了一段时间他并不消失。而当有了bindchange方法的时候。他过了一段时间会消失,

这类似于延迟执行。但是好麻烦 给个差评。
 
四、loading 加载。
/* ---page/test/test.wxml----*/
 
<loading hidden="{{hidden}}">加载中...</loading>
<button type="default" bindtap="loadingTap">点击弹出loading</button>
 
/* ---page/test/test.wxml----*/
/* ---page/test/test.js----*/
Page({
    data: {
        hidden: true
    },
    loadingTap: function(){
        this.setData({
          hidden: false
        });
        var that = this;
        setTimeout(function(){
          that.setData({
              hidden: true
          });
            that.update();       
        }, 3000);
    }
})
 
/* ---page/test/test.js----*/
属性名 类型 默认值 说明
hidden Boolean false 是否隐藏

虽然写了这么多,然并卵。即将被废弃。不过他的js版。和ionic1的一些操作回馈很像。。而且写起来也不是很难。。题外话,总感觉wxapp和angular2和ionic1是三胞胎。

不过废弃也好。wxml的写法的确要多蛋疼有多蛋疼。而且还很麻烦。最重要的是。页面还要画出来。。之后隐藏。代码并不美观,我也是日了个大熊猫。

八: 操作提示(wxml 即将废弃)的更多相关文章

  1. iOS13适配/黑暗模式的适配/KVC访问私有属性/模态弹窗ViewController 默认样式改变 /LaunchImage即将废弃/蓝牙的权限申请/推送Device Token适配/UIKit 控件变化/StatusBar新增样式

    目录 1. KVC访问私有属性 2. 模态弹窗ViewController 默认样式改变 3. 黑暗模式的适配 4. LaunchImage即将废弃 5. 新增一直使用蓝牙的权限申请 6. Sign ...

  2. 小技巧:SystemTray中进行操作提示

    SystemTray中进行操作提示在wp中应用比较广泛,截图如下. 实现方法也十分简单 1.xaml代码中写入: shell:SystemTray.IsVisible="True" ...

  3. AIX-vi操作-提示Unknown terminal type的问题解决方法

    AIX-vi操作-提示Unknown terminal type的问题解决方法AIX Version 5.3$ vi /etc/profilelinux: Unknown terminal type[ ...

  4. win10频繁提示证书即将过期怎么办

    最近几天每次开机都会提示许可证即将过期 ”Windows+R”打开“运行”窗口,输入“slmgr.vbs -xpr”并点击“确定”,弹出的窗口确实显示过期时间在本月1.29过期 百度各种激活方法后,发 ...

  5. wp8.1 app退出操作提示

    微软的wp8.1 sdk相比之前wp8 sdk以及相关dll类库,微软又重新编译过,相关系统类库也经过精简,删改了部分传统dll库中的方法对象,很多常用方法对象被写进Windows.UI为前缀的命名空 ...

  6. eclipse的hadoop插件对集群操作提示org.apache.hadoop.security.AccessControlException:Permission denied

    eclipse的hadoop插件对集群操作提示org.apache.hadoop.security.AccessControlException:Permission denied: user = z ...

  7. Android使用ShowcaseView加入半透明操作提示图片的方法

    http://beeder.me/2014/11/11/how-to-add-a-semi-transparent-demo-screen-using-showcaseview/ 这篇文章具体介绍了如 ...

  8. flutter Tooltip轻量级操作提示

    Tooltip是继承于StatefulWidget的一个Widget,它并不需要调出方法,当用户长按被Tooltip包裹的Widget时,会自动弹出相应的操作提示. import 'package:f ...

  9. 九: 操作提示(js版本)

    一.toast 消息提示框 他用到了一个wx.showToast(object) 这样一个方法.作用是显示提示框. /* ---page/test/test.wxml----*/   <butt ...

随机推荐

  1. C# PowerPoint操作的基本用法。

    代码using System;using System.Collections.Generic;using System.Linq;using System.Text;using OFFICECORE ...

  2. Android - Telephony API 1.6

    SignalStrength: 1. public int getGsmSignalStrength() : GSM Signal Strength, valid values are (0-31, ...

  3. 赛肯德 | 2017NEERC某题

    我们枚举每一条边的流量x,将它作为底流(也就是比它大的的流量变成差值,比它小的流量为0),然后我们设x就是路径上第K大的那个边的流量.然后跑最短路,加上dis[n]就是当前的答案.然后取min即可. ...

  4. springMVC和Struts异同

    Spring MVC属于SpringFrameWork的后续产品,已经融合在Spring Web Flow里面.Spring 框架提供了构建 Web 应用程序的全功能 MVC 模块.使用 Spring ...

  5. 2016级算法期末模拟练习赛-A.wuli51和京导的毕业旅行

    1063 wuli51和京导的毕业旅行 思路 中等题,二分+贪心. 简化题意,将m+1个数字分成n份,ans为这n段中每段数字和的最大值,求ans最小值及其方案. 对于这种求最小的最大值,最常用的方法 ...

  6. 北航操作系统实验2019:Lab4-1流程梳理

    北航操作系统实验2019:Lab4-1流程梳理 前言 操作系统的实验课实在令人头秃.我们需要在两周时间内学习相关知识.读懂指导书.读懂代码.补全代码.处理玄学bug和祖传bug,以及回答令人窒息的思考 ...

  7. Q673 最长递增子序列的个数

    给定一个未排序的整数数组,找到最长递增子序列的个数. 示例 1: 输入: [1,3,5,4,7] 输出: 2 解释: 有两个最长递增子序列,分别是 [1, 3, 4, 7] 和[1, 3, 5, 7] ...

  8. dp--2019南昌网络赛B-Match Stick Game

    dp--2019南昌网络赛B-Match Stick Game Xiao Ming recently indulges in match stick game and he thinks he is ...

  9. RocketMQ学习笔记(一)eclipse版的quickstart

    学而时习之,不亦说乎! 自己搭建个学习用的RocketMQ总是很麻烦,需要虚拟机环境,网络,需要安装rocketmq,启动.时间久了再去看,又不知道这个虚拟机是干嘛的了. 直接在eclipse中启动, ...

  10. Mac下的浏览器类似Windows中Ctrl+F5的不请求缓存刷新页面的快捷键

    正常方式: [shitf]+[command]+[r] 如果改过快捷键的: [fn]+[shift]+[command]+[f]