TDesign小程序组件库体验

原来小程序开发有组件库选择的问题,可以使用WeUI或者Vant。今年腾讯开源了前端的框架TDesign,我也分享了两篇使用文章。

年初分享的主要是PC端的框架,除了有PC端的框架外,最近TDesign又新出了小程序的框架,组件比较丰富,今天就带着大家体验一下。

1 创建小程序

用微信扫码登录微信开发者工具,登录之后点击+号来创建项目
TDesign小程序组件库体验_第1张图片

创建项目时,先需要填入项目名称,选择程序存放的目录,填入appid,后端选择不使用云服务,模板的话选择Javascript-基础模板
TDesign小程序组件库体验_第2张图片

2 微信开发者工具介绍

创建好项目之后可以看到微信开发者工具的一个界面,界面是包含几个区域
TDesign小程序组件库体验_第3张图片
导航条有默认的各种各样的功能,预览区是我们小程序编译之后的效果,文件区域我们可以创建各种各样的文件,代码编辑区可以写代码,调试区可以显示各种调试信息。

有的开发者喜欢用vscode或者uniapp来开发小程序,我呢还是喜欢原生的工具,我们只是需要最终的结果,选哪种工具最终的结果都是一样的。

3 项目的初始化

我们现在使用模板是一个空白的项目,如果需要使用TDesign的,我们先需要做初始化,生成package.json文件

在调试区,切换到终端
TDesign小程序组件库体验_第4张图片
点击新建终端
TDesign小程序组件库体验_第5张图片
在光标的位置输入如下命令

npm init

TDesign小程序组件库体验_第6张图片
一路按回车,完成package.json的创建
TDesign小程序组件库体验_第7张图片

4 安装TDesign

在终端的命令行继续输入如下的命令

npm i tdesign-miniprogram -S --production

TDesign小程序组件库体验_第8张图片
安装成功后可以在文件区域看到多了一个node_modules
TDesign小程序组件库体验_第9张图片
按照官方文档的指引是要求做npm的构建,在导航条上找到工具,在工具下找到构建npm
TDesign小程序组件库体验_第10张图片
构建成功后在文件区域会多了一个miniprogram_npm的文件夹
TDesign小程序组件库体验_第11张图片

5 全局引入或者局部引入组件

我们引入这个库就是为了使用,如果全局引入,就修改app.json,用哪个组件就引入哪个组件,比如我们需要使用Button组件,按如下引入

{
  "pages":[
    "pages/index/index",
    "pages/logs/logs"
  ],
  "usingComponents": {
    "t-button": "tdesign-miniprogram/button/button",
    "t-button-group": "tdesign-miniprogram/button-group/button-group"
  },
  "window":{
    "backgroundTextStyle":"light",
    "navigationBarBackgroundColor": "#fff",
    "navigationBarTitleText": "Weixin",
    "navigationBarTextStyle":"black"
  },
  "style": "v2",
  "sitemapLocation": "sitemap.json"
}

然后我们在index.wxml里增加按钮组件的代码,查看效果

<!--index.wxml-->
<view class="container">
  <view class="userinfo">
    <block wx:if="{{canIUseOpenData}}">
      <view class="userinfo-avatar" bindtap="bindViewTap">
        <open-data type="userAvatarUrl"></open-data>
      </view>
      <open-data type="userNickName"></open-data>
    </block>
    <block wx:elif="{{!hasUserInfo}}">
      <button wx:if="{{canIUseGetUserProfile}}" bindtap="getUserProfile"> 获取头像昵称 </button>
      <button wx:elif="{{canIUse}}" open-type="getUserInfo" bindgetuserinfo="getUserInfo"> 获取头像昵称 </button>
      <view wx:else> 请使用1.4.4及以上版本基础库 </view>
    </block>
    <block wx:else>
      <image bindtap="bindViewTap" class="userinfo-avatar" src="{{userInfo.avatarUrl}}" mode="cover"></image>
      <text class="userinfo-nickname">{{userInfo.nickName}}</text>
    </block>
  </view>
  <view class="usermotto">
    <text class="user-motto">{{motto}}</text>
  </view>
  <t-button t-class="external-class" theme="primary" block disabled="{{disabled}}">强按钮</t-button>
</view>

TDesign小程序组件库体验_第12张图片
如果只是页面中使用,可以在index.json里引入,引入的原理是一样的,这样就完成了一个组件库的搭建

6 总结

我们本篇介绍了如何在小程序中使用TDesign组件库,在开发中我们总是寻找一些现成的解决方案来提高开发效率,重复造轮子也可以,前提是你造的比别人好,而且用的人也多。本篇我们就分享到这,我们下次再见。

作者简介:用了三年时间研究了微信小程序、微信云开发、微搭的技术体系,后续持续分享小程序开发的相关教程,敬请关注

你可能感兴趣的