在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 的 prototype问题。
Jan 03 Javascript
用js判断用户浏览器是否是XP SP2的IE6
Mar 08 Javascript
国外大牛IE版本检测!现在IE都到9了,IE检测代码
Jan 04 Javascript
JS格式化数字保留两位小数点示例代码
Oct 15 Javascript
JavaScript实现网站访问次数统计代码
Aug 12 Javascript
JavaScript中利用构造器函数模拟类的方法
Feb 16 Javascript
Vue实现用户自定义字段显示数据的方法
Aug 28 Javascript
解决layui-open关闭自身窗口的问题
Sep 10 Javascript
基于Layui自定义模块的使用方法详解
Sep 14 Javascript
js+canvas实现两张图片合并成一张图片的方法
Nov 01 Javascript
详解vue路由
Aug 05 Javascript
js加减乘除精确运算方法实例代码
Jan 17 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
Windows IIS PHP 5.2 安装与配置方法
2009/06/08 PHP
php cache类代码(php数据缓存类)
2010/04/15 PHP
PHP实现批量上传单个文件
2015/12/29 PHP
php正则表达式基本知识与应用详解【经典教程】
2017/04/17 PHP
php实现的错误处理封装类实例
2017/06/20 PHP
利用PHP内置SERVER开启web服务(本地开发使用)
2021/03/09 PHP
JQuery 学习笔记 选择器之一
2009/07/23 Javascript
浅析JS异步加载进度条
2016/05/05 Javascript
Bootstrap实现input控件失去焦点时验证
2016/08/04 Javascript
Bootstrap源码学习笔记之bootstrap进度条
2016/12/24 Javascript
node安装--linux下的快速安装教程
2017/03/21 Javascript
JQuery EasyUI 结合ztrIee的后台页面开发实例
2017/09/01 jQuery
nodejs使用http模块发送get与post请求的方法示例
2018/01/08 NodeJs
webpack优化的深入理解
2018/12/10 Javascript
vue和better-scroll实现列表左右联动效果详解
2019/04/29 Javascript
基于Nuxt.js项目的服务端性能优化与错误检测(容错处理)
2019/10/23 Javascript
[04:48]DOTA2亚洲邀请赛林书豪为VGJ加油
2017/04/01 DOTA
[01:12:35]Spirit vs Navi Supermajor小组赛 A组败者组第一轮 BO3 第二场 6.2
2018/06/03 DOTA
Python3 适合初学者学习的银行账户登录系统实例
2017/08/08 Python
Python3之读取连接过的网络并定位的方法
2018/04/22 Python
基于pandas将类别属性转化为数值属性的方法
2018/07/25 Python
Python常见排序操作示例【字典、列表、指定元素等】
2018/08/15 Python
Python实现随机创建电话号码的方法示例
2018/12/07 Python
Python中的枚举类型示例介绍
2019/01/09 Python
Python装饰器限制函数运行时间超时则退出执行
2019/04/09 Python
远程部署工具Fabric详解(支持Python3)
2019/07/04 Python
Django  ORM 练习题及答案
2019/07/19 Python
通过Turtle库在Python中绘制一个鼠年福鼠
2020/02/03 Python
Html5 webRTC简单实现视频调用的示例代码
2020/09/23 HTML / CSS
逻辑链路控制协议
2016/10/01 面试题
某公司面试题
2012/03/05 面试题
导游的职业规划书范文
2013/12/27 职场文书
活动总结模板
2014/05/09 职场文书
《扇形统计图》教学反思
2016/02/17 职场文书
Vue+Element UI实现概要小弹窗的全过程
2021/05/30 Vue.js
Python自动化爬取天眼查数据的实现
2021/06/15 Python