首頁  >  文章  >  web前端  >  實例詳解Mint UI 基於 Vue.js 行動裝置元件庫

實例詳解Mint UI 基於 Vue.js 行動裝置元件庫

小云云
小云云原創
2017-12-26 13:30:592093瀏覽

希望本文分享的內容能幫助大家,Mint UI 包含豐富的 CSS 和 JS 元件,能夠滿足日常的行動端開發需求。接下來透過本文來跟大家分享Mint UI 基於 Vue.js 行動端元件庫,需要的朋友參考下。

官網網址 http://mint-ui.github.io/

Mint UI 包含豐富的 CSS 和 JS 元件,能夠滿足日常的行動端開發需求。透過它,可以快速建立風格統一的頁面,提升開發效率。

真正意義上的按需載入元件。可以只載入聲明過的元件及其樣式文件,無需再糾結文件體積過大。

考慮到行動裝置的效能門檻,Mint UI 採用 CSS3 處理各種動效,避免瀏覽器進行不必要的重繪和重排,從而使用戶獲得流暢順滑的體驗。

依托 Vue.js 高效的元件化方案,Mint UI 做到了輕量化。即使全部引入,壓縮後的檔案體積也僅有 100+ K。

Mint UI

GitHub:https://github.com/ElemeFE/mint-ui

專案首頁:http:/ /mint-ui.github.io/#!/zh-cn

Demo:http://elemefe.github.io/mint-ui/#!/

##文件:http: //mint-ui.github.io/docs/#!/zh-cn

由餓了麼前端團隊推出的Mint UI 是一個基於Vue.js 的行動裝置元件庫。自 6 月初開源以來,根據社群和團隊內部的回饋,修復了一些 bug 並新增了部分元件,於本週發布了 0.2.0 版本。本文介紹如何從零開始建立一個使用 Mint UI 的 Vue 專案。

鷹架

隨著 Vue.js 的快速發展,目前搭建一個 Vue 專案的鷹架已經有不少選擇了。例如可以使用官方提供的 vue-cli。本文使用餓了麼自己的建置工具 cooking 來完成這個任務。

首先,全域安裝cooking:

npm i cooking -g

#新專案資料夾:

mkdir mint-ui-example


進入專案資料夾,使用cooking 進行建置:

cooking init vue


最後的參數vue 表示建置的是基於Vue.js 的鷹架。

在建置過程中,cooking 需要以下一些參數:

#其中「使用何種CSS 預處理」這裡選擇的是Salad,它是一套基於PostCSS 的解決方案,有興趣的同學可以了解一下。當然,你也可以選擇其他的預處理器。

完成建置後的專案結構為:

接下來安裝Mint UI:

npm i mint-ui --save

引入Mint UI

好了,之後的工作可以分為兩種情況:

#1. 引入全部元件

如果你的專案會用到Mint UI 裡較多的元件,最簡單的方法就是把它們全部引入。此時需要在入口檔案main.js 中:


import MintUI from 'mint-ui';
import 'mint-ui/lib/style.css';
Vue.use(MintUI);
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 插件。首先當然是安裝它:

npm i babel-plugin-component -D

然後在.babelrc 中配置它:

{
 "plugins": ["other-plugin", ["component", [
 { "libraryName": "mint-ui", "style": true }
 ]]]
}
這樣上述兩種引入方法就可以簡化為:

import MintUI from 'mint-ui';
Vue.use(MintUI);

import Button from 'mint-ui/lib/button';
Vue.component(Button.name, Button);
外掛程式會自動引入對應的CSS 檔案。

使用

每個元件的使用方法請閱讀文檔,這裡只舉一個微小的例子。在 app.vue 中:

<template>
 <h1>mint-ui-example</h1>
 <mt-button
 type="primary"
 @click="sheetVisible = true">
 选择操作
 </mt-button>
 <mt-actionsheet
 cancel-text=""
 :actions="actions"
 :visible.sync="sheetVisible">
 </mt-actionsheet>
</template>
<script>
 import { Toast, MessageBox } from 'mint-ui';
 export default {
 name: 'app',
 data() {
 return {
 sheetVisible: false,
 actions: [{
 name: '展示 Toast',
 method: this.showToast
 }, {
 name: '展示 Message Box',
 method: this.showMsgbox
 }]
 };
 },
 methods: {
 showToast() {
 Toast('这是一个 Toast');
 },
 showMsgbox() {
 MessageBox('提示', '这是一个 Message Box');
 }
 }
 };
</script>
則會得到如下頁面:

預告

以上就是 Mint UI 的使用方法介紹。如果在使用的過程中遇到任何問題,或是想給我們一些建議,歡迎大家去 GitHub 倉庫提 issue。

可能有些同學知道,除了這個行動裝置元件庫以外,餓了麼還有一套桌面端元件庫 vue-desktop。目前我們正在對它進行重構,這次有了 UED 的介入,整體視覺有了很大的提升。完成後也會開源,而且會有兩個版本,分別支援 vue 1.0.x 和 vue 2.0。當然,Mint UI 也會考慮支援 vue 2.0。

PS: mint-ui在手機頁面的樣式不正常問題

 問題一、

在使用vue2.0 +mint-ui 時pc端的樣式沒有問題但是手機端的就縮小了,失去了想要的效果

這是一個頭檔的申明問題在入口檔index.html裡的標籤裡加上這個代碼即可

 <meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
相關推薦:


詳解Vue.js 的行動端元件庫mint-ui實作無限捲動載入更多

css基礎元件庫(相容於低版本)_html/css_WEB-ITnose

用於web應用資料管理和應用程式通訊的jQuery元件庫

#

以上是實例詳解Mint UI 基於 Vue.js 行動裝置元件庫的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn