1960|1

337

帖子

2

TA的资源

纯净的硅(初级)

楼主
 

【平头哥Sipeed LicheeRV 86 Panel测评】- 3 waft-ui组件的测试 [复制链接]

 

Waft-UI组件学习

再完成waft开发环境搭建后,就到了waft开发的学习过程,首先学习waft-UI中组件的使用。

1 Waft-UI组件的安装

    以下组件测试基于,Waft-UI组件的最新版本是0.3,waft版本0.7。

    在创建了新的工程后,在工程目录下安装waft-ui,命令为

        npm i waft-ui –save

    更新waft为0.7版

    执行命令:

        ncu

        nuc –u

        npm install

    将会将当前工程中的组件更新到最新。

2、Button组件的学习

Waft-UI中提供了基本的Button组件,我们可以直接调用这个组件来使用。

2.1 组件的调用方法

在index.json中增加button组件的引用,方法为:

{

    "usingComponents": {

        "x-button": "waft-ui/assembly/button/button"

    }

}

2.2 Button的显示

在index.axml文件中,编写显示脚本。

<view class="wrapper">

<x-nav-bar showArrow="{{true}}" title="Button"></x-nav-bar>

<view style="flex: 1; padding-top: 30rpx; display: flex;flex-direction: column;">

<x-button type="primary" text="按钮"

onTap="priclick" >

</x-button>

<view class="dot"></view>

<x-button type="secondary" text="按钮"

onTap="secclick" >

</x-button>

<view class="dot"></view>

<view class="title">带图标</view>

<view class="flex">

<x-button

text="按钮"

iconURL="http://172.17.64.61:8001/ico/bulb-24x24-23415.png"

onTap="btnclick" >

<view class="dot"></view>

</view>

</view>

<view class="title">自定义颜色</view>

<view class="flex">

<x-button text="按钮" bgColor="#ff976a" borderColor="#ff976a" textColor="#ffffff"></x-button><view class="dot"></view>

</view>



</view>

实际显示效果

2.3 Button的事件响应

在index.ts中编写Button的事件响应函数

import { FuncPage, MessageEvent, Target, history, Event } from 'waft';
import { JSON, JSONObject } from "waft-json";

export function Main(page: FuncPage): void {
// page.addEventListener("btnclick", (e: MessageEvent): void => {
// console.log("this is button test!");
// });

page.addEventListener("btnclick", (e, target): void => {
console.log("this is button test!");
});

page.addEventListener("priclick", (e, target): void => {
console.log("this is primary button test!");
});

page.addEventListener("secclick", (e, target): void => {
console.log("this is secondary button test!");
});

page.onload = function (data: JSONObject, target?: Target | null) {
console.log('--> onLoad tigger with launchData = ' + data.toString());
};

page.onmessage = function (event: MessageEvent) {
console.log('--> onMessage args = ' + event.toString());
}
}

事件的响应结果展示

可见,当按键被按下时,按键的响应函数被执行了,在终端打印了我们的输出信息。

3 Toast组件的学习

Waft-UI中提供了Toast清提示组件,我们可以直接调用这个组件显示提示信息。

3.1 组件的调用方法

在index.json中增加Toast组件的引用,方法为:

{

   "usingComponents": {

    "x-toast": "waft-ui/assembly/toast/toast"

  }

}

3.2 组件使用

组件的显示是通过程序调用完成的。

import { Page, Props } from "waft";
import { JSON, JSONObject } from "waft-json";
import { Toast, ToastOptions } from "waft-ui";



export class ComponentTest extends Page {
   constructor(props: Props) {
   super(props);
   this.addEventListener("clickToast1Btn", (e, target): void => {

// 未测试多个toast同时调用的问题
   let toastOptions = new ToastOptions();
   toastOptions.message = "测试Toast1";
   toastOptions.type = "fail";
   toastOptions.iconURL = "http://172.17.64.61:8001/ico/O1CN01cSL5BS1d7bmgm1pxt_!!6000000003689-2- 
   tps-200-200.png"
   toastOptions.position = "middle";
   Toast.show(toastOptions);
  });

   this.addEventListener("clickToast2Btn", (e, target): void => {
   let toastOptions = new ToastOptions();
   toastOptions.message = "测试Toast2";
   toastOptions.type = "success";
   toastOptions.iconURL = "http://172.17.64.61:8001/ico/O1CN01evbrT81s2JRO3tkra_!!6000000005708-2-tps-200-200.png"
   toastOptions.duration = 5000;
   toastOptions.position = "middle";
   Toast.show(toastOptions);
  }); 
 }
}

实际显示效果

 

4 Image组件的学习

Waft-UI中提供了Image显示组件,我们可以直接调用这个组件显示图片。

4.1 组件的调用方法

在index.axml中增加image组件的调用

<view class="wrapper">
<x-nav-bar showArrow="{{true}}" title="测试图片"></x-nav-bar>
<view class="content">
<x-image full="{{ true }}" width="320rpx" height="240rpx" src="http://172.17.64.61:8001/ico/O1CN01dudMzQ1eY0BV29999_!!6000000003882-2-tps-1920-1080.png"></x-image>
</view>
</view>

其中width和height根据屏幕尺寸适当调整,图片需要指明获取来源。

在index.json中增加image组件的引用,方法为:

{

   "usingComponents": {
     "x-image": "waft-ui/assembly/image/image"
   }
}

4.2实际显示效果

 

最新回复

Waft-UI中的Button组件挺好玩,也很有用   详情 回复 发表于 2022-3-24 07:22
点赞 关注
 
 

回复
举报

6828

帖子

0

TA的资源

五彩晶圆(高级)

沙发
 

Waft-UI中的Button组件挺好玩,也很有用

 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/7 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表