在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 相关文章推荐
jquery控制select的text/value值为选中状态
Jun 03 Javascript
jQuery如何将选中的对象转化为原始的DOM对象
Jun 09 Javascript
js和jquery中循环的退出和继续学习记录
Sep 06 Javascript
jQuery中dequeue()方法用法实例
Dec 29 Javascript
最流行的Node.js精简型和全栈型开发框架介绍
Feb 26 Javascript
JavaScript的Polymer框架中dom-repeat与VM的相关操作
Jul 29 Javascript
浅谈javascript的Touch事件
Sep 27 Javascript
JS实现中国公民身份证号码有效性验证
Feb 20 Javascript
Node学习记录之cluster模块
May 31 Javascript
vue.js移动端app实战1:初始配置详解
Jul 24 Javascript
Echarts地图添加引导线效果(labelLine)
Sep 30 Javascript
微信小程序实现上传多张图片、删除图片
Jul 29 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
web站点获取用户IP的安全方法 HTTP_X_FORWARDED_FOR检验
2013/06/01 PHP
php使用ffmpeg获取视频信息并截图的实现方法
2016/05/03 PHP
thinkphp Apache配置重启Apache1 restart 出错解决办法
2017/02/15 PHP
键盘 keycode的值 javascript时触发事件时很有用的要素
2009/11/02 Javascript
javascript笔记 String类replace函数的一些事
2011/09/22 Javascript
nodejs教程 安装express及配置app.js文件的详细步骤
2013/05/11 NodeJs
node.js实现多图片上传实例
2014/06/03 Javascript
javascript进行数组追加方法小结
2014/06/16 Javascript
火狐下input焦点无法重复获取问题的解决方法
2014/06/16 Javascript
浅谈JS闭包中的循环绑定处理程序
2014/11/09 Javascript
Bootstrap的class样式小结
2016/12/01 Javascript
原生js实现新闻列表展开/收起全文功能
2017/01/20 Javascript
Angularjs 双向绑定时字符串的转换成数字类型的问题
2017/06/12 Javascript
vue 1.x 交互实现仿百度下拉列表示例
2017/10/21 Javascript
详解使用PM2管理nodejs进程
2017/10/24 NodeJs
微信小程序 上传头像的实例详解
2017/10/27 Javascript
基于vue中keep-alive缓存问题的解决方法
2018/09/21 Javascript
vue移动端实现手机左右滑动入场动画
2020/06/17 Javascript
js图数据结构处理 迪杰斯特拉算法代码实例
2019/09/11 Javascript
es6函数之箭头函数用法实例详解
2020/04/25 Javascript
Python函数学习笔记
2008/10/07 Python
linux下安装easy_install的方法
2013/02/10 Python
用Python编写分析Python程序性能的工具的教程
2015/04/01 Python
详解Python3序列赋值、序列解包
2019/05/14 Python
python实现生成Word、docx文件的方法分析
2019/08/30 Python
HTML5+JS实现俄罗斯方块原理及具体步骤
2013/11/29 HTML / CSS
以实惠的价格轻松租车,免费取消:Easyrentcars
2019/07/16 全球购物
护理职业应聘自荐书
2013/09/29 职场文书
保送生自荐信范文
2013/10/06 职场文书
营业员个人总结的自我评价
2013/10/25 职场文书
总务岗位职责
2013/11/19 职场文书
高三语文教学反思
2014/01/15 职场文书
2014年庆元旦活动方案
2014/02/15 职场文书
养成教育经验材料
2014/05/26 职场文书
2014年重阳节敬老活动方案
2014/09/16 职场文书
新手必备之MySQL msi版本下载安装图文详细教程
2021/05/21 MySQL