在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 DOM 添加事件
Feb 14 Javascript
javascript之querySelector和querySelectorAll使用介绍
Dec 20 Javascript
用原生JavaScript实现jQuery的$.getJSON的解决方法
May 03 Javascript
JS+DIV实现鼠标划过切换层效果的方法
May 25 Javascript
干货分享:让你分分钟学会javascript闭包
Dec 25 Javascript
详解javascript高级定时器
Dec 31 Javascript
Bootstrap Table使用方法详解
Aug 01 Javascript
JS实现一次性弹窗的方法【刷新后不弹出】
Dec 26 Javascript
Three.js基础学习之场景对象
Sep 27 Javascript
浅谈AngularJs 双向绑定原理(数据绑定机制)
Dec 07 Javascript
React+Antd+Redux实现待办事件的方法
Mar 14 Javascript
详解一个小实例理解js原型和继承
Apr 24 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 Curl出现403错误的解决办法
2014/05/29 PHP
php中error与exception的区别及应用
2014/07/28 PHP
浅谈php的优缺点
2015/07/14 PHP
举例讲解PHP面对对象编程的多态
2015/08/12 PHP
php仿微信红包分配算法的实现方法
2016/05/13 PHP
php批量删除操作(数据访问)
2017/05/23 PHP
jquery异步请求实例代码
2011/06/21 Javascript
判断对象是否Window的实现代码
2012/01/10 Javascript
基于jquery实现控制经纬度显示地图与卫星
2013/05/20 Javascript
JavaScript:new 一个函数和直接调用函数的区别分析
2013/07/10 Javascript
JS设置获取cookies的方法
2014/01/26 Javascript
jQuery插件MixItUp实现动画过滤和排序
2015/04/12 Javascript
全面解析Bootstrap表单使用方法(表单控件)
2015/11/24 Javascript
js实现仿qq消息的弹出窗效果
2016/01/06 Javascript
JavaScript中清空数组的方法总结
2016/12/02 Javascript
jquery实现焦点轮播效果
2017/02/23 Javascript
玩转Koa之核心原理分析
2018/12/29 Javascript
中级前端工程师必须要掌握的27个JavaScript 技巧(干货总结)
2019/09/23 Javascript
python3下实现搜狗AI API的代码示例
2018/04/10 Python
OpenCV2从摄像头获取帧并写入视频文件的方法
2018/08/03 Python
利用Python库Scapy解析pcap文件的方法
2019/07/23 Python
Python缓存技术实现过程详解
2019/09/25 Python
Python算法中的时间复杂度问题
2019/11/19 Python
wxpython多线程防假死与线程间传递消息实例详解
2019/12/13 Python
Django 自定义404 500等错误页面的实现
2020/03/08 Python
Python实现石头剪刀布游戏
2021/01/20 Python
HTML5到底会有什么发展?HTML5的前景展望
2015/07/07 HTML / CSS
乌克兰电子产品和家用电器购物网站:TOUCH
2019/08/09 全球购物
经济学博士求职自荐信范文
2013/11/23 职场文书
音乐之声音乐广播稿
2014/09/10 职场文书
幼儿园教师读书笔记
2015/06/29 职场文书
2016孝老爱亲模范事迹材料
2016/02/26 职场文书
竞聘演讲报告:基本写作有哪些?附开头范文
2019/10/16 职场文书
详解MySQL事务的隔离级别与MVCC
2021/04/22 MySQL
golang特有程序结构入门教程
2021/06/02 Python
如何使用注解方式实现 Redis 分布式锁
2022/07/23 Redis