Mint-UI是基于Vue.js的移动端组件库

Mint-UI是Vue组件库,是使用Vue技术封装出来的成套的组件,可以无缝地和Vue项目进行集成开发

Mint UI官网

不同版本的安装

导入有两种方式


完整引入

入口文件main.js

import Vue from 'vue'
import index from './index.vue'
import Mint from 'mint-ui' //导入Mint-UI,把所有组件都导入进来
import 'mint-ui/lib/style.css' //样式,可以省略node_modules这层目录的书写 Vue.use(Mint) //将MintUI安装到Vue中,把所有组件注册为全局组件 var vm = new Vue({
el:'#app',
render:function (creatElement) {
return creatElement(index)
}
})

然后就可以在我们的vue模板文件中直接使用需要的组件,Mint-UI将组件分为JS Component、CSS Component和Form Component,需要哪个组件就直接选中复制粘贴过来使用

使用组件前要进行全局或私有组件的定义,显然Mint-UI已经帮我们定义好了,所以能直接拿来用

使用JS Component

<template>
<div>
<!--点击按钮触发自定义的show方法,show方法中调用Toast-->
<mt-button type="primary" @click="show">primary</mt-button>
</div>
</template>
<script>
import { Toast } from 'mint-ui' //使用前要导包

export default {
data:function () {
return { }
},
methods:{
show(){
Toast({
message:'快乐崇拜',
position:'bottom',
duration:-1,
iconClass:'glyphicon glyphicon-ok-sign'
})
}
}
}
</script>
<style scoped>
</style>

按需引入

官方文档说到,按需引入需要先安装babel-plugin-component插件

npm install babel-plugin-component -D

再将.babelrc修改为

{
"presets": [
["es2015", { "modules": false }]
],
"plugins": [["component", [
{
"libraryName": "mint-ui",
"style": true
}
]]]
}

babel是帮webpack处理高级语法的,这里既然需要使用babel,那就按老套路执行两套命令安装两套包来实现babel相关功能

npm i babel-core babel-loader babel-plugin-transform-runtime -D    //babel的转换工具
npm i babel-preset-env babel-preset-stage-0 -D //babel的语法,babel-preset-env语法插件包含目前所有ES相关的语法

然后在webpack.config中module节点下rules数组内添加新匹配规则

//在配置babel的loader规则时必须把node_modules目录通过exclude选项排除掉
{test: /\.js$/,use: 'babel-loader', exclude: /node_modules/}

最后根目录下新建.babelrc的babel配置文件(json格式),结合Mint-UI文档的修改要求后,为

{
"presets": ["env","stage-0"],
"plugins": ["transform-runtime",["component", [
{
"libraryName": "mint-ui",
"style": true
}
]]]
}

然后在入口文件main中引入就可使用了

import Vue from 'vue'
import index from './index.vue'
import 'mint-ui/lib/style.css' //样式一定别忘了引入 import { Button } from 'mint-ui' //按需导入,按钮组件 Vue.component(Button.name,Button) //组件注册 var vm = new Vue({
el:'#app',
render:function (creatElement) {
return creatElement(index)
}
})

途中报错

ERROR in ./src/main.js
Module build failed (from ./node_modules/babel-loader/lib/index.js):
Error: Cannot find module '@babel/core'
babel-loader@8 requires Babel 7.x (the package '@babel/core'). If you'd like to use Babel 6.x ('babel-core'), you should install 'babel-loader@7'.

按其说的,安装babel-loader@7 后,问题解决


总结

回想自己创建组件的过程,模板对象原本是在入口文件中创建的,后来改使用vue文件来创建

模板创建好后在入口文件中 import 模板名 from ‘模板路径’,来导入经过webpack打包结合(template+script+style)的模板对象

之后使用Vue.component('自定义组件名',模板对象)的方式来注册,之后就可使用该模板

也可以把模板对象给render方法或者路由构造里的component

现在有了Mint-UI这个强大的组件库,把里面已经构建好的组件直接拿来用即可

Mint-UI的更多相关文章

  1. vue mint UI

    vue 与mint  UI 结合开发手机app  html5页面 api  文档   http://mint-ui.github.io/#!/zh-cn

  2. 基于VUE.JS的移动端框架Mint UI

    Mint UI GitHub:github.com/ElemeFE/mint 项目主页:mint-ui.github.io/# Demo:elemefe.github.io/mint- 文档:mint ...

  3. vue mint ui 手册文档对于墙的恐惧

    http://www.cnblogs.com/smallteeth/p/6901610.html npm 安装 推荐使用 npm 的方式安装,它能更好地和 webpack 打包工具配合使用. npm ...

  4. Mint UI文档

    Mint UI文档:http://elemefe.github.io/mint-ui/#/ 一.Mint UI的安装和基本用法. 1.NPM :npm i mint-ui -S 建议使用npm进行安装 ...

  5. 新建一个基于vue.js+Mint UI的项目

    上篇文章里面讲到如何新建一个基于vue,js的项目(详细文章请戳用Vue创建一个新的项目). 该项目如果需要组件等都需要自己去写,今天就学习一下如何新建一个基于vue.js+Mint UI的项目,直接 ...

  6. iView webapp / Mint UI / MUI [前端UI]

    前端UI iView webapp一套高质量的 微信小程序 UI 组件库 https://weapp.iviewui.com/?from=iview Mint UI 基于 Vue.js 的移动端组件库 ...

  7. Mint UI 使用指南

    上来直接在webpack里将Mint UI引入项目,发现各种问题.饿了么组件库文档太坑了,好多地方写错,有些该说明的地方没说,比如例子里单文件.vue组件里用的类post-css处理器,我一直使用SA ...

  8. Mint UI Example的运行

    Mint -UI是新推出的移动端UI框架 官网 不过官网上的文档例子不是很全面. 建议下载他们提供的example来学习. 1.examplle源码下载地址 2.打开项目,我这里使用webstorm, ...

  9. vuetify,vux,Mint UI 等框架的选择

    vuetify: https://vuetifyjs.com/zh-Hans/getting-started/quick-start NutUI:https://github.com/jdf2e/nu ...

  10. Vue移动组件库Mint UI的安装与使用

    一.什么是 Mint UI 1.Mint UI 包含丰富的 CSS 和 JS 组件,可以提升移动端开发效率 2.Mint UI 按需加载组件 3.Mint UI 轻量化 二.Mint UI 的安装 1 ...

随机推荐

  1. php处理文件上传

    注意点: 1.<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post" ...

  2. linux下的crontab安装及简单使用

    1.安装 # yum install vixie-cron # yum install crontabs # chkconfig crond on  #设为开机启动,先要安装chkconfig(yum ...

  3. mybatis无mapper.xml用法

    在datasource配置类上加上 @MapperScan("cn.x.x.dao")@Configuration <project xmlns="http://m ...

  4. fuel6.0安装部署

    在经过一系列安装openstack方式后,个人觉得fuel的安装方式相对简易,接下来记录下安装部署fuel6.0的过程.本教程适合想把fuel6.0部署后,云主机需要连接外网的需求. 安装virtua ...

  5. ntp 时间同步

    NTP 是网络时间协议(Network Time Protocol)的简称,通过 udp 123 端口进行网络时钟同步 一.安装 # 既可做服务端也可做客户端 yum install -y ntp # ...

  6. 4、JPA-EntityManager.merge()

    EntityManager#merge merge() 用于处理 Entity 的同步.即数据库的插入和更新操作 merge的几种情况 1. 若传入的是一个临时对象 package jpa.test; ...

  7. java语音转文字

    用到的百度提供的api 需要把wav音频文件转成16k的频率,必须转,不转百度api解析不出来.显示音频文件不清晰错误.想要转化还必须要有ffmpeg程序,这个自己百度去下载.然后拿转好的文件扔到百度 ...

  8. ruby--Hash方法汇总

    一.给Hash添加默认值 :h = {1,2,3,4}    #=> {1 => 2, 3 => 4}    h.default = 7   h[1]                 ...

  9. 阅读:ECMAScript 6 入门(2)

    参考 ECMAScript 6 入门 ES6新特性概览 ES6 全套教程 ECMAScript6 (原著:阮一峰) JavaScript 教程 重新介绍 JavaScript(JS 教程) Modul ...

  10. windows安装mysql5.7.xx解压版

    解压后修改配置文件 my.ini [mysql] # 设置mysql客户端默认字符集 default-character-set=utf8 [mysqld] #设置3306端口 port = 3306 ...