首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >62. Vue 饿了么Mint UI组件的基本使用

62. Vue 饿了么Mint UI组件的基本使用

作者头像
Devops海洋的渔夫
发布于 2020-08-26 02:17:43
发布于 2020-08-26 02:17:43
2.7K00
代码可运行
举报
文章被收录于专栏:Devops专栏Devops专栏
运行总次数:0
代码可运行

前言

前面的篇章基本已经说明在webpack中如何构建vue框架的时候。除了这些基础框架的要素,为了快速开发app应用。还要借助于更多的开源组件。

本篇章就来介绍一下如何基本使用饿了么的Mint UI组件。

使用 饿了么的 MintUI 组件

Github 仓储地址

Mint-UI官方文档

腾讯说明文档

安装基本说明

首先我们来看看官网的首页介绍,如下:

对于mint-ui的导入更加推荐使用按需导入的方式,因为这样可以节省压缩编译后的bundle.js的空间大小。

1.使用npm安装mint-ui

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
# Vue 2.0
npm install mint-ui -S

在项目中执行安装如下:

好了,安装完毕之后,下面来导入组件

2.完整导入mint-ui的说明

访问 http://mint-ui.github.io/docs/#/zh-cn2/quickstart

下面先来完整导入看看,如下:

在 main.js 中写入以下内容:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
import Vue from 'vue'
import MintUI from 'mint-ui'
import 'mint-ui/lib/style.css'
import App from './App.vue'

Vue.use(MintUI)

new Vue({
  el: '#app',
  components: { App }
})

以上代码便完成了 Mint UI 的引入。需要注意的是,样式文件需要单独引入。

Mint-UI中css组件的使用

3.在 main.js 配置完整导入mint-ui

当完整导入mint-ui之后,就可以使用使用相关的组件了,下面来看看一个button按钮组件。

4.使用button组件

访问 https://cloud.tencent.com/developer/section/1489979

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<mt-button type="default">default</mt-button>
<mt-button type="primary">primary</mt-button>
<mt-button type="danger">danger</mt-button>

下面在app组件中使用看看,如下:

在浏览器看看效果:

5.设置button按钮的大小

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<mt-button size="small">small</mt-button>
<mt-button size="large">large</mt-button>
<mt-button size="normal">normal</mt-button>

下面配置一下,如下:

浏览器显示如下:

6.设置button按钮的禁用disabled

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<mt-button disabled>disabled</mt-button>

设置如下:

浏览器显示如下:

7.设置button幽灵按钮 plain

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<mt-button plain>plain</mt-button>

编写如下:

浏览器显示如下:

8.设置button图表 icon

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<mt-button icon="back">back</mt-button>
<mt-button icon="more">更多</mt-button>

设置如下:

浏览器显示如下:

可以看到mint-ui提供了这两个的图标,如果还要更多,就要自己自定义使用其他库的图标了。

Mint-UI中 js 组件的使用

上面演示了mint-ui中css组件的基本使用,那么下面来看看js组件的基本使用。

与css组件不同,js组件不管Mint-ui是否完整导入,都需要进行特定的组件进行导入。

1.导入简短的消息提示框 | Toast

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
import { Toast } from 'mint-ui';

2.下面在app组件中设置一个点击按钮事件,并且触发Toast消息

基本用法:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
Toast('提示信息');

在app组件中设置如下:

在浏览器测试如下:

3.设置更多消息提示的API配置

https://cloud.tencent.com/developer/section/1489961

在调用 Toast 时传入一个对象即可配置更多选项

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
Toast({
  message: '提示',
  position: 'bottom',
  duration: 5000
});

若需在文字上方显示一个 icon 图标,可以将图标的类名作为 iconClass 的值传给 Toast(图标需自行准备)

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
Toast({
  message: '操作成功',
  iconClass: 'icon icon-success'
});

执行 Toast 方法会返回一个 Toast 实例,每个实例都有 close 方法,用于手动关闭 Toast

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
let instance = Toast('提示信息');
setTimeout(() => {
  instance.close();
}, 2000);

API

参数

说明

类型

可选值

默认值

message

文本内容

String

position

Toast 的位置

String

'top''bottom''middle'

'middle'

duration

持续时间(毫秒),若为 -1 则不会自动关闭

Number

3000

className

Toast 的类名。可以为其添加样式

String

iconClass

icon 图标的类名

String

可以看到文档中提示有很多API参数可以设置,下面来逐个演示一下。

4.设置提示消息的位置以及持续时长

测试效果如下:

5.给提示消息设置icon图标

虽然提示消息可以配置icon图标,但是图标库却是要自己准备的。

说明:若需在文字上方显示一个 icon 图标,可以将图标的类名作为 iconClass 的值传给 Toast(图标需自行准备)
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
Toast({
  message: '操作成功',
  iconClass: 'icon icon-success'
});
在这里我使用阿里巴巴的图标矢量库作为演示,首先访问:https://www.iconfont.cn/

搜索一个打勾的图标作为演示,如下:

将选择好的图标下载至本地中。

创建一个static/iconfont文件夹,用于存放字体文件
main.js导入iconfont库
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
// 引入iconfont库
import './static/iconfont/iconfont.css'
配置webpack使用字体库文件
安装url-loader
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
cnpm i url-loader file-loader -D
在webpack.config.js配置规则如下:
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
    module: {
        rules: [
            ....
            { test: /\.(ttf|eot|svg|woff|woff2)$/, use: 'url-loader' }, // 处理 字体文件的 loader
        ]
    },
在消息提示Toast中设置图标样式
在浏览器看看提示消息

6.自定义Toast的样式类

在浏览器显示如下:

7.自定义关闭Toast提示消息

在网页请求的时候,经常会使用一些loding加载图标。当请求回来之后,则关闭图标。

那么这种情况就需要我们自己来定义图标的关闭时刻。

下面可以设置图标不关闭,然后使用延时setTimeout来模拟网络延时请求,如下:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
created() {
            console.log("模拟网页启动获取list数据");
            // 模拟网页启动获取list数据
            this.getlist()
        },
        methods: {
            getlist() {
                let instance = Toast({
                    message: '提示',
                    position: 'bottom',
                    duration: -1, // 设置图标不关闭
                    iconClass: 'iconfont icon-xin11', // 设置图标
                    className: 'mytoast', // 自定义样式类
                }); // 启动图标

                // 使用延时来模拟网络请求
                setTimeout(function () {
                    instance.close();
                    console.log("获取到列表数据,关闭图标")
                }, 3000)

            },

测试效果如下:

Mint-UI 按需导入组件说明

在上面都是使用Mint-UI的完整导入,我们来看看生成的bundle.js文件有多大,如下:

生成的bundle.js大小达到了1.16 MB,这是非常大的。

为了更好的减少这个文件大小,下面我们来按需导入mint-ui。

1.官网按需导入的说明

按需引入

借助 babel-plugin-component,我们可以只引入需要的组件,以达到减小项目体积的目的。

首先,安装 babel-plugin-component:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
npm install babel-plugin-component -D

然后,将 .babelrc 修改为:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
{
  "presets": [
    ["es2015", { "modules": false }]
  ],
  "plugins": [["component", [
    {
      "libraryName": "mint-ui",
      "style": true
    }
  ]]]
}

如果你只希望引入部分组件,比如 Button 和 Cell,那么需要在 main.js 中写入以下内容:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
import Vue from 'vue'
import { Button, Cell } from 'mint-ui'
import App from './App.vue'

Vue.component(Button.name, Button)
Vue.component(Cell.name, Cell)
/* 或写为
 * Vue.use(Button)
 * Vue.use(Cell)
 */

new Vue({
  el: '#app',
  components: { App }
})

下面来执行一下看看。

2.安装插件 babel-plugin-component

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
npm install babel-plugin-component -D

3.将 .babelrc 配置插件

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
{
  "presets": ["@babel/preset-env"],
  "plugins": [
    ["@babel/plugin-transform-runtime", {"corejs": 2, "helpers": true, "regenerator": true, "useESModules": false}],
    ["component", {"libraryName": "mint-ui","style": true}]
  ]
}

4.在main.js配置导入Button按钮

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
// 按需导入 Mint-UI
// 导入Button按钮
import { Button } from 'mint-ui'
Vue.component(Button.name, Button); // 设置Button按钮组件,可以自定义修改 Button 组件的名称 Button.name

5.测试是否正常使用Button组件

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
Vue 08.webpack中使用.vue组件
注意:不能使用npm下载,需要从 github 上下载现成的包并解压,然后拷贝到项目中使用
LittlePanger
2020/04/14
1.2K0
Mint-UI
MUI不同于Mint-UI,MUI只是开发出来的一套很好用的代码片段,里面提供了配置的样式,配置的HTML代码段,类似于Bootstrap;
全栈程序员站长
2022/09/06
2.9K0
记录使用mint-ui的感想
今天记录一下使用mint-ui的心得,首先说明一下mint-ui是用来做手机端界面的ui库,这个ui库我是做项目的时候使用到了,所以今天简单的说明记录一下该库的一些存在的一些可能会出问题的地方,毕竟刚开始使用,不是很熟练,所以简单的写一下。
何处锦绣不灰堆
2020/05/29
8790
记录使用mint-ui的感想
Vue移动组件库Mint UI的安装与使用
更多 MintUI 组件请参考 http://mint-ui.github.io/docs/#/zh-cn2/repositories
Leophen
2019/08/23
2K0
Vue移动端框架Mint UI教程-组件的使用(三)
前面两节说到,从搭建环境,引入Mint框架,到实现一个页面导航跳转; Vue移动端框架Mint UI教程-搭建环境引入框架(一):https://www.jianshu.com/p/874e5152b3c5 Vue移动端框架Mint UI教程-底部导航栏(二):https://www.jianshu.com/p/56e887cbb660
王小婷
2019/04/21
1.7K0
Vue移动端框架Mint UI教程-组件的使用(三)
前面两节说到,从搭建环境,引入Mint框架,到实现一个页面导航跳转; Vue移动端框架Mint UI教程-搭建环境引入框架(一):https://www.jianshu.com/p/874e5152b3c5 Vue移动端框架Mint UI教程-底部导航栏(二):https://www.jianshu.com/p/56e887cbb660
王小婷
2025/05/18
820
Vue移动端框架Mint UI教程-组件的使用(三)
vue 学习笔记第无弹
1. 在 webpack 中配置 .vue 组件页面的解析 运行cnpm i vue -S将 vue 安装为运行依赖; 运行cnpm i vue-loader vue-template-compiler -D将解析转换 vue 的包安装为开发依赖; 运行cnpm i style-loader css-loader -D将解析转换 CSS 的包安装为开发依赖,因为 .vue 文件中会写 CSS 样式; 在webpack.config.js中,添加如下module规则: module: { rules
syy
2020/04/07
1.4K0
Mint UI入门系列教程
今天具体说一说比较常用的;Mint UI框架的按钮组件,Mint UI是 饿了么团队开发基于vue .js的移动端UI框架,它包含丰富的 CSS 和 JS 组件,能够满足日常的移动端开发需要
王小婷
2019/05/14
3.7K0
Mint UI入门系列教程
Vue移动端框架Mint UI教程-搭建环境引入框架(一)
今天具体说一说比较常用的;Mint UI框架的按钮组件,Mint UI是 饿了么团队开发基于vue .js的移动端UI框架,它包含丰富的 CSS 和 JS 组件,能够满足日常的移动端开发需要。
王小婷
2019/03/22
3.1K0
Vue移动端框架Mint UI教程-搭建环境引入框架(一)
vue-cli3项目搭建配置以及性能优化
在之前的开发中主要用的是vue-cli2,最近空闲时间比较多,接下来有新项目,本着偷懒的本能,自己打算搭建一个基础包以备后期开发应用,并对其进行性能优化和配置
青梅煮码
2023/03/13
1.7K0
vue-cli3项目搭建配置以及性能优化
码云推荐 | 基于 vue.js 的移动端组件库 mint-ui
升级版的mint-ui,基于vue.js,可自己拓展组件。 Installation 推荐使用 npm 的方式安装,它能更好地和 webpack 打包工具配合使用。 “ npm i mint-ui -S # for Vue 1.x npm i mint-ui@1 -S Usage Import all components. “ import Vue from 'vue' import Mint from 'mint-ui'; Vue.use(Mint); Or import specified comp
码云Gitee
2018/03/29
1.6K0
vue2使用ElementUI
打不着的大喇叭
2024/03/11
1620
vue2使用ElementUI
饿了么Mint UI库Datetime picker日期选择器采坑记录
Mint UI 是饿了么前端团队(elemeFE)推出的专门针对移动端的前端 UI 库,不过其 github 库已经有2年多没有更新了,API 也不是很详细。
德顺
2019/12/02
2.7K0
饿了么Mint UI库Datetime picker日期选择器采坑记录
Vue移动端框架Mint UI教程-搭建环境引入框架(一)
今天具体说一说比较常用的;Mint UI框架的按钮组件,Mint UI是 饿了么团队开发基于vue .js的移动端UI框架,它包含丰富的 CSS 和 JS 组件,能够满足日常的移动端开发需要。
王小婷
2025/05/18
970
Vue移动端框架Mint UI教程-搭建环境引入框架(一)
vue项目引入element-ui
借助 babel-plugin-component,我们可以只引入需要的组件,以达到减小项目体积的目的。
赵哥窟
2022/03/23
1.3K0
vue项目引入element-ui
Asp.net+Vue2构建简单记账WebApp之四(vue.js构建记账主页面)
一、安装我们所需要的一些库 cnpm install mint-ui -S // 安装mint-ui库,ui库,cnmp是按照淘宝镜像后的用法,用法和npm一样。-s是将库添加到项目的packag
易兒善
2018/08/21
1.1K0
Asp.net+Vue2构建简单记账WebApp之四(vue.js构建记账主页面)
在vue2.0中引用element-ui组件库
element-ui是由饿了么团队开发的一套基于 Vue 2.0 的桌面端组件库。
用户6167509
2019/09/04
2.2K0
Element UI 快速入门指南
Element UI 是一套为开发者、设计师和产品经理准备的基于 Vue 2.0 的桌面端组件库。它提供了一系列开箱即用的组件,帮助我们快速构建用户界面。本文将详细介绍如何快速入门 Element UI,并通过一些实例来展示其强大功能。
九转成圣
2024/06/09
6650
Vue Cli 3 搭建一个可按需引入组件的组件库架子
Ant-design、Element 这些框架都有按需引入组件的功能。需要使用哪个组件,就引入哪个组件,这样那些没必要的组件就不会打包到我们的项目里了。跟着我下边的步骤,相信大家也能搭建出一个按需引入
stys35
2020/04/13
2.7K0
vue.js代码开发最常见的功能集合
按需引入弹框插件import {MessageBox} from 'mint-ui';
王小婷
2018/08/10
1.3K0
vue.js代码开发最常见的功能集合
相关推荐
Vue 08.webpack中使用.vue组件
更多 >
交个朋友
加入腾讯云官网粉丝站
蹲全网底价单品 享第一手活动信息
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档