在vue项目中安装使用Mint-UI的方法


Posted in Javascript onDecember 27, 2017

一、Mint UI 是 由饿了么前端团队推出的 一个基于 Vue.js 的移动端组件库,具有以下特性: 使用文档:  

三、接着安装 Mint UI:

npm i mint-ui --save

四、然后需要引入 Mint UI ,这里有两种情况:

1. 引入全部组件

如果项目会用到 Mint UI 里较多的组件,最简单的方法就是把它们全部引入。此时需要在入口文件 main.js 中:

import Mint from 'mint-ui';
Vue.use(Mint);
import 'mint-ui/lib/style.css';

2. 按需引入

如果你只需要使用某个组件,可以仅引入这个组件,Mint UI 能够保证在代码打包时,与这个组件无关的文件不会出现在最终代码里。比如需要引入 Button 组件,则在 main.js 中:

import Button from 'mint-ui/lib/button';
import 'mint-ui/lib/button/style.css';
Vue.component(Button.name, Button);

上面两种引入方法都要单独引入相应的 CSS 文件。这很不方便,尤其当你使用按需引入的方法引入多个组件时。

五、为了避免这个问题,可以使用babel-plugin-component插件。

1. 首先当然是安装它:

npm i babel-plugin-component -D

2. 然后在 .babelrc 中配置它:

{
 "presets": [
 ["env", {
  "modules": false,
  "targets": {
  "browsers": ["> 1%", "last 2 versions", "not ie <= 8"]
  }
 }],
 "stage-2"
 ],
 "plugins": ["transform-runtime",["component",[
   {"libraryName":"mint-ui","style":true}
  ]]],
 "env": {
 "test": {
  "presets": ["env", "stage-2"],
  "plugins": ["istanbul"]
 }
 }
}

3. 这样上述两种引入方法就可以简化为:

//import Mint from 'mint-ui';
//Vue.use(Mint);
//import 'mint-ui/lib/style.css'; //不需要手动导入mint-ui样式
import Button from 'mint-ui/lib/button';
Vue.component(Button.name, Button);

import { Swipe, SwipeItem } from 'mint-ui'; //按需引入部分组件
Vue.component(Swipe.name, Swipe);
Vue.component(SwipeItem.name, SwipeItem);

前面安装的插件会自动引入相应的 CSS 文件!

六、具体使用UI组件 -- 可以直接参考官方文档http://mint-ui.github.io/docs/

使用的过程中发现Mint UI文档不是很详细,很多具体的用法都需要另外百度...

1.首先看下官方文档的第一种引入和用法:

在vue项目中安装使用Mint-UI的方法在vue项目中安装使用Mint-UI的方法

这种组件引入的时候,有一行Vue.component("对应的组件名"),使用的时候是再vue文档的template部分,使用对应的标签名加属性,其实就是直接复制官方文档的代码即可,不过相对复杂多属性的组件就要另外百度了.

那么接下来看一下在项目中的使用代码:

//在main.js里面添加--复制官方文档该组件对应的引入即可
import { Header } from 'mint-ui';
Vue.component(Header.name, Header);
<template>
 <mt-header title="修改客户资料">
   <a @click="toBack" replace slot="left">
    <a class="back-icon"></a>
   </a>
   <!--这个头部导航栏关键的是mt-header父标签,而该标签内的内容是根据需求写的哦-->
 </mt-header>
</template>

在vue项目中安装使用Mint-UI的方法组件效果图

2. 然后看官网文档的第二种引入和用法:

在vue项目中安装使用Mint-UI的方法在vue项目中安装使用Mint-UI的方法

我们可以看到这种组件引入的时候,居然没有Vue.component("对应的组件名"),然后看基本用法,就这么简单一句......

我参照第一种方法直接引入文档的Toast组件,然后在script里面使用,这个时候会报错:

//提示框
import { Toast } from 'mint-ui';
created:function(){
 Toast("使用Toast"); //这里是为了测试才写在created里面,在平时用的时候,是根据自己需要放在对应的位置使用的
}

在vue项目中安装使用Mint-UI的方法

百度了一下,好像挺多人跟我一样遇到这个问题的......

其实我们看下Toast的使用语句,就可以知道Toast是一个方法,既然是方法,直接在js里面未定义使用就会报错,所以我们在引入该组件的时候,将该方法设置为全局变量:

//在main.js里面添加,这里需要将Toast方法设置为全局变量,否则就要在每个用到该方法的vue页面重新引入该组件....
import { Toast } from 'mint-ui';
window.Toast= Toast;

设置完之后就不再报错了, 再看一下页面该组件:

在vue项目中安装使用Mint-UI的方法

组件效果图

总结

以上所述是小编给大家介绍的在vue项目中安装使用Mint-UI,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
JavaScript Object的extend是一个常用的功能
Dec 02 Javascript
jQuery EasyUI中对表格进行编辑的实现代码
Jun 10 Javascript
jQuery使用经验小技巧(推荐)
May 31 Javascript
Bootstrap3多级下拉菜单
Feb 24 Javascript
bootstrap switch开关组件使用方法详解
Aug 22 Javascript
详解vuex持久化插件解决浏览器刷新数据消失问题
Apr 15 Javascript
Vue 3.0 前瞻Vue Function API新特性体验
Aug 12 Javascript
基于html+css+js实现简易计算器代码实例
Feb 28 Javascript
JS+CSS+HTML实现“代码雨”类似黑客帝国文字下落效果
Mar 17 Javascript
vue项目在线上服务器访问失败原因分析
Aug 14 Javascript
基于Vue2实现移动端图片上传、压缩、拖拽排序、拖拽删除功能
Jan 05 Vue.js
JS轻量级函数式编程实现XDM二
Jun 16 Javascript
AngularJS集合数据遍历显示的实例
Dec 27 #Javascript
vue.js整合mint-ui里的轮播图实例代码
Dec 27 #Javascript
解决Jstree 选中父节点时被禁用的子节点也会选中的问题
Dec 27 #Javascript
Vue 过滤器filters及基本用法
Dec 26 #Javascript
Javascript防止图片拉伸的自适应处理方法
Dec 26 #Javascript
Vue工程模板文件 webpack打包配置方法
Dec 26 #Javascript
微信小程序出现wx.navigateTo页面不跳转问题的解决方法
Dec 26 #Javascript
You might like
利用PHP动态生成VRML网页
2006/10/09 PHP
PHP支持多种格式图片上传(支持jpg、png、gif)
2011/11/03 PHP
PHP实现生成唯一会员卡号
2015/08/24 PHP
Ajax+PHP实现的分类列表框功能示例
2019/02/11 PHP
PHP读取目录树的实现方法分析
2019/03/22 PHP
Laravel中10个有用的用法小结
2019/05/06 PHP
基于thinkphp5框架实现微信小程序支付 退款 订单查询 退款查询操作
2020/08/17 PHP
Aster vs Newbee BO5 第三场2.19
2021/03/10 DOTA
点击弹出层外区域关闭弹出层jquery特效示例
2013/08/25 Javascript
js获取某元素的class里面的css属性值代码
2014/01/16 Javascript
JavaScript用Number方法实现string转int
2014/05/13 Javascript
Lua表达式和控制结构学习笔记
2014/12/15 Javascript
每天一篇javascript学习小结(Array数组)
2015/11/11 Javascript
jquery.validate[.unobtrusive]和Bootstrap实现tooltip错误提示问题分析
2016/10/30 Javascript
基于jQuery代码实现圆形菜单展开收缩效果
2017/02/13 Javascript
搭建简单的nodejs http服务器详解
2017/03/09 NodeJs
JavaScript 数组去重并统计重复元素出现的次数实例
2017/12/14 Javascript
javascript用defineProperty实现简单的双向绑定方法
2020/04/03 Javascript
通过实例解析jQ Ajax操作相关原理
2020/09/23 Javascript
JavaScript实现轮播图效果
2020/10/30 Javascript
python在多玩图片上下载妹子图的实现代码
2013/08/13 Python
使用Python脚本在Linux下实现部分Bash Shell的教程
2015/04/17 Python
Python函数式编程指南(二):从函数开始
2015/06/24 Python
python3.7.0的安装步骤
2018/08/27 Python
python机器学习之KNN分类算法
2018/08/29 Python
python 实现将txt文件多行合并为一行并将中间的空格去掉方法
2018/12/20 Python
python获取指定日期范围内的每一天,每个月,每季度的方法
2019/08/08 Python
使用HTML5里的classList操作CSS类
2016/06/28 HTML / CSS
Sunglasses Shop荷兰站:英国最大的太阳镜独立在线零售商和供应商
2017/01/08 全球购物
德国旅游网站:weg.de
2018/06/03 全球购物
Ibatis中如何提高SQL Map的性能
2013/05/11 面试题
平面网站制作专科生的自我评价分享
2013/12/11 职场文书
职业生涯规划设计步骤
2014/01/12 职场文书
师德师风演讲稿
2014/05/05 职场文书
2014最新预备党员思想汇报范文:中国梦,我的梦
2014/10/25 职场文书
运动会通讯稿300字
2015/07/20 职场文书