跨平台框架Uni-app入坑筆記(一)


文中下划線皆為地址鏈接,點擊跳轉.

一、介紹

Uni-app是一個前端框架,使用Vue.js開發,繼承自Vue.js,提供了完整的Vue.js體驗。

Vue文字教程請訪問W3CSchool相關教程學習

Vue視頻教程請訪問Bilibili相關視頻課程,視頻課程使用VS編輯器,講解較為詳細。

提供了條件編譯優化,可以為某個平台編個性化代碼而不影響其他平台。

打包到APP時使用5+引擎,5+的所有能力都可以在uni-app中使用。

二、開發工具和環境

開發工具使用HbuilderX(內置uni-app項目模板):下載地址

微信開發者工具(編譯調試小程序所用):下載地址

APP模擬器即配置教程:教程地址

三、開發規范及目錄結構

(1)頁面規范——Vue單文件組件規范

.vue后綴名文件是自定義文件類型,使用類HTML語法描述vue組件。

每個vue文件包括三種類型的頂級語言塊:<template>     <script>    <style>,此外還允許添加自定義塊。

vue-loader會解析文件,提取每個語言塊,如有必要會通過其他loader處理,最后將他們組裝成一個ES Module,它的默認導出是一個Vue.js組件選項的對象。

#語言塊、模板

每個.vue文件有且僅有一個<template>塊

#腳本

每個.vue文件有且僅有一個<script>塊

#樣式

每個.vue文件可以有多個<style>標簽

#自定義塊

可以在.vue文件中添加額外的自定義塊來實現項目的特定需求。

#src導入

可以通過src屬性導入外部文件

注意:src導入遵循和webpack模塊相同的路徑解析規則,即(相對路徑需要以./開始)

(2)組件標簽規范

注意,不能使用標准HTML標簽,也不能用JS對dom進行操作。詳見uni-app組件規范手冊

接口能力(JS API)靠近微信小程序規范,詳見uni-app接口規范

數據綁定及事件處理靠近Vue.js規范,同時補充了APP及頁面的生命周期

,建議使用Flex布局進行開發以兼容多端運行。flex布局視頻教程

(3)目錄結構(1.9.2.20190417版本目錄):

pages    :業務頁面文件存放目錄

static      :存放應用引用靜態資源(圖片,視頻等)的地方,注意:驚天資源只能存放於此

APP.vue   :應用配置,用來配置APP全局樣式以及監聽應用的生命周期

main.js     :Vue初始化入口文件

mainfest.json   :配置應用名稱、appid、logo、版本等打包信息

pages.json       :配置頁面路由、導航條、選項卡等頁面類信息

uni.scss       :uni-app內置的常用樣式變量,對於APP開發者(插件使用者),可以通過修改這些變量來定制自己的插件,實現自定義主題功能。如果項目使用了scss預處理,可以直接在scss代碼中使用其中的變量,同時無需import這個文件。

四、頁面樣式與布局

重要說明:新版本HBuilderX中已經將app.vue的全局樣式刪除了,在開發過程中需要flex時使用flex即可

(1)尺寸單位

框架目前僅支持長度單位px和%。uni-app的基准寬度為750px

頁面元素寬度在uni-app中的寬度計算公式:750px * (元素在設計稿中的寬度)/(設計稿基准寬度)

(2)樣式導入

使用@import語句導入外聯樣式,后跟需要導入的外聯樣式表的相對路徑,以分號結束

(3)內聯樣式

框架組件支持style、class屬性來空值組件的樣式

style:接受動態樣式,在運行時會解析,盡量避免將靜態的樣式寫進style中以免影響渲染速度

class:用於指定樣式規則,其屬性值是樣式規則中類選擇器名(樣式類名)的集合,樣式類名前無需加.  ,樣式類名之間用空格分隔

(4)選擇器

.class .intro              選擇多有擁有class="intro"的組件

#id #firstname               選擇擁有id="firstname"的組件

element view              選擇所有view組件

element,element view,checkbox  選擇所有文檔的view組件和所有的checkbox組件

::after  view::after       在view組件后面插入內容,(僅微信小程序和5+APP生效)

::before  view::before      在view組件前面插入內容,(僅微信小程序和5+APP生效)

(5)全局樣式與局部樣式

定義在App.vue中的樣式為全局樣式,作用於每個頁面。在pages目錄下的vue文件中定義的樣式為局部樣式,制作用在對應的頁面,並會覆蓋App.vue中相同的選擇器。

(6)flex布局

支持跨平台


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM