详解Vue2.0配置mint-ui踩过的那些坑


Posted in Javascript onApril 23, 2018

最近开发项目的时候逐渐采用vue.js+mint-ui的技术栈,但是昨天开始配置开发环境的时候,遇到了各种报错,即使是按照两家的官方文档配置,也还是会报错,晚上下班后回去配置了一晚上,才终于把它配置好,所以就记录下来,以防后面再次踩坑。。

vue.js介绍

Vue.js 是一个用于创建 web 交互界面的。其特点是

  1. 简洁 HTML 模板 + JSON 数据,再创建一个 Vue 实例,就这么简单。
  2. 数据驱动 自动追踪依赖的模板表达式和计算属性。
  3. 组件化 用解耦、可复用的组件来构造界面。
  4. 轻量 ~24kb min+gzip,无依赖。
  5. 快速 精确有效的异步批量 DOM 更新。
  6. 模块友好 通过 NPM 或 Bower 安装,无缝融入你的工作流。

vue.js中文官网

mint-ui介绍

Mint UI是饿了么前端团队开源的基于 Vue.js 的移动端组件库

特点是:

  1. Mint UI 包含丰富的 CSS 和 JS 组件,能够满足日常的移动端开发需要。通过它,可以快速构建出风格统一的页面,提升开发效率。
  2. 真正意义上的按需加载组件。可以只加载声明过的组件及其样式文件,无需再纠结文件体积过大。
  3. 考虑到移动端的性能门槛,Mint UI 采用 CSS3 处理各种动效,避免浏览器进行不必要的重绘和重排,从而使用户获得流畅顺滑的体验。
  4. 依托 Vue.js 高效的组件化方案,Mint UI 做到了轻量化。即使全部引入,压缩后的文件体积也仅有 ~30kb (JS + CSS) gzip。

Mint UI中文官网

创建Vue.js项目

首先根据vue官网给出的方法在本地创建一个vue项目

# 全局安装 vue-cli
$ npm install --global vue-cli
# 创建一个基于 webpack 模板的新项目
$ vue init webpack my-project
# 安装依赖,走你
$ cd my-project
$ npm install
$ npm run dev

配置Mint UI 环境

接着根据Mint UI的官网在项目中引入Mint UI的环境

npm i mint-ui -S

然后在项目中的main.js文件引入所有组件

import Vue from 'vue'
import MintUI from 'mint-ui'
import 'mint-ui/lib/style.css'
import App from './App.vue'

Vue.use(MintUI)

好了根据官网所说的,以上代码便完成了 Mint UI 的引入。

运行项目

最后根据官网的内容在APP.vue里面写一个button组件看看

<template>
 <div id="app">
 <mt-button @click.native="handleClick">按钮</mt-button>
</div>
</template>

<script>
export default{
 el: '#app',
 methods: {
  handleClick: function() {
   this.$toast('Hello world!');
  }
 }
}
</script>

<style>
</style>

好了,环境搭建完成,我们来运行项目吧

npm run dev

然后就啪啪啪各种报错

详解Vue2.0配置mint-ui踩过的那些坑

解决错误

首先你需要在本地项目中安装CSS解释器

npm i css-loader style-loader -D

然后在build文件夹下面的webpack.base.conf.js文件里面配置如下代码

{
    test: /\.css$/,
    include: [
     /src/,
     '/node_modules/mint-ui/lib/'  
    ],
    use:[
     {loader:"style-loader"},
     {loader:"css-loader"},
    ]
    
   }

如果你报es2015之类的错误,则需要将.babelrc文件修改为:

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

最后运行

环境配置好后,我们最后再运行一下。

npm run dev

终于可以了,就此,环境配置完成。

详解Vue2.0配置mint-ui踩过的那些坑

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
javascript css float属性的特殊写法
Nov 13 Javascript
MooTools 1.2介绍
Sep 14 Javascript
JS 退出系统并跳转到登录界面的实现代码
Jun 29 Javascript
js实现select跳转功能代码
Oct 22 Javascript
js实现点击图片将图片地址复制到粘贴板的方法
Feb 16 Javascript
js解决movebox移动问题
Mar 29 Javascript
Javascript+CSS3实现进度条效果
Oct 28 Javascript
详解jQuery中ajax.load()方法
Jan 25 Javascript
QQ跳转支付宝并自动领红包脚本(最新)
Jun 22 Javascript
Cookbook组件形式:优化 Vue 组件的运行时性能
Nov 25 Javascript
自定义Vue中的v-module双向绑定的实现
Apr 17 Javascript
js实现文字头像的生成代码
Mar 07 Javascript
vue2.0 移动端实现下拉刷新和上拉加载更多的示例
Apr 23 #Javascript
详解vue 计算属性与方法跟侦听器区别(面试考点)
Apr 23 #Javascript
JavaScript变量声明var,let.const及区别浅析
Apr 23 #Javascript
Node.js应用设置安全的沙箱环境
Apr 23 #Javascript
vue-devtools的安装步骤
Apr 23 #Javascript
使用Vue组件实现一个简单弹窗效果
Apr 23 #Javascript
深入理解JavaScript和TypeScript中的class
Apr 22 #Javascript
You might like
用js进行url编码后用php反解以及用php实现js的escape功能函数总结
2010/02/08 PHP
解析PHP中DIRECTORY_SEPARATOR,PATH_SEPARATOR两个常量的作用
2013/06/21 PHP
通过dbi使用perl连接mysql数据库的方法
2014/04/16 PHP
基于jquery+thickbox仿校内登录注册框
2010/06/07 Javascript
js获取元素在浏览器中的绝对位置
2010/07/24 Javascript
40个有创意的jQuery图片和内容滑动及弹出插件收藏集之三
2012/01/03 Javascript
extjs 04_grid 单击事件新发现
2012/11/27 Javascript
JS实现CheckBox复选框全选全不选功能
2015/05/06 Javascript
元素绑定click点击事件方法
2015/06/08 Javascript
ashx文件获取$.ajax()方法发送的数据
2016/05/26 Javascript
全面解析JavaScript中“&amp;&amp;”和“||”操作符(总结篇)
2016/07/18 Javascript
JS简单获取客户端IP地址的方法【调用搜狐接口】
2016/09/05 Javascript
NodeJS实现客户端js加密
2017/01/09 NodeJs
微信小程序微信支付接入开发实例详解
2017/04/12 Javascript
js获取元素的偏移量offset简单方法(必看)
2017/07/05 Javascript
Vue resource中的GET与POST请求的实例代码
2017/07/21 Javascript
Angular中sweetalert弹框的基本使用教程
2018/07/22 Javascript
Layui组件Table绑定行点击事件和获取行数据的方法
2018/08/19 Javascript
js实现前面自动补全位数的方法
2018/10/10 Javascript
微信小程序点击item使之滚动到屏幕中间位置
2020/03/25 Javascript
python实现自动更换ip的方法
2015/05/05 Python
python使用clear方法清除字典内全部数据实例
2015/07/11 Python
Django中cookie的基本使用方法示例
2018/02/03 Python
python将字符串以utf-8格式保存在txt文件中的方法
2018/10/30 Python
利用Python如何实现一个小说网站雏形
2018/11/23 Python
Python并发concurrent.futures和asyncio实例
2020/05/04 Python
CSS3 渐变(Gradients)之CSS3 线性渐变
2016/07/08 HTML / CSS
NFL加拿大官方网上商店:NHLShop.ca
2019/03/12 全球购物
印度尼西亚最完整和最大的在线药房网站:Farmaku.com
2019/11/23 全球购物
北京RT科技有限公司.net工程师面试题
2013/02/15 面试题
本科毕业生自我鉴定
2013/11/02 职场文书
个人银行贷款担保书
2014/04/01 职场文书
教师个人考察材料
2014/12/16 职场文书
优秀教师工作总结2015
2015/07/22 职场文书
详解Flutter网络请求Dio库的使用及封装
2022/04/14 Java/Android
Mysql数据库事务的脏读幻读及不可重复读详解
2022/05/30 MySQL