简介

uni-app 是一个使用 Vue.js 开发所有前端应用的框架,开发者编写一套代码,可发布到iOS、Android、Web(响应式)、以及各种小程序(微信/支付宝/百度/头条/飞书/QQ/快手/钉钉/淘宝)、快应用等多个平台。
官方网站:https://uniapp.dcloud.io/

开始使用

开发工具

推荐使用 HBuilderX
优点:

  1. HBuilderX是通用的前端开发工具,但为uni-app做了特别强化。能直接创建uni-app项目。
  2. 专为vue打造,提供比其他工具更优秀的vue支持,大幅提升vue开发效率
  3. 自动安装项目所需插件

安装插件

sass / scss 编译,less 编译,uni-app 编译

创建项目

点击 文件 -->  点击 新建 -->  点击 1.项目 -->  输入项目名称  -->  选择模板 -->  点击创建

项目目录

┌─components            uni-app组件目录
│  └─comp-a.vue         可复用的a组件
├─hybrid                存放本地网页的目录,详见
├─platforms             存放各平台专用页面的目录,详见
├─pages                 业务页面文件存放的目录
│  ├─index
│  │  └─index.vue       index页面
│  └─list
│     └─list.vue        list页面
├─static                存放应用引用静态资源(如图片、视频等)的目录,注意:静态资源只能存放于此
├─wxcomponents          存放小程序组件的目录,详见
├─main.js               Vue初始化入口文件
├─App.vue               应用配置,用来配置App全局样式以及监听 应用生命周期
├─manifest.json         配置应用名称、appid、logo、版本等打包信息,详见
└─pages.json            配置页面路由、导航条、选项卡等页面类信息,详见

页面配置

全局配置

"globalStyle": {"navigationBarTextStyle": "black", //导航栏标题颜色"navigationBarTitleText": "app", //导航栏标题文字"navigationBarBackgroundColor": "#F8F8F8", //导航栏背景颜色"backgroundColor": "#F8F8F8", //下拉窗口背景颜色"backgroundTextStyle":light, //下拉 loading 的样式"enablePullDownRefresh":true, //开启下拉刷新"onReachBottomDistance":60,//页面上拉触发距页面底部距离为60"usingComponents":{"collapse-tree-item":"/components/collapse-tree-item"},//引用小程序组件"pageOrientation": "auto"//支持屏幕旋转
},

页面配置

{"pages": [{"path": "pages/index/index","style": {"navigationBarTitleText": "首页", //设置页面标题文字"disableScroll": true, //设置为true则页面整体不能上下滚动"enablePullDownRefresh":true, //开启下拉刷新"navigationBarShadow": {  "colorType": "green"},//导航栏阴影}},...]
}

tabbar

"tabBar": {"list": [{"text":"首页","pagePath": "pages/home/home","iconPath": "static/icon/home.png","selectedIconPath":"static/icon/home-active.png"},{"text":"资讯","pagePath": "pages/new/new","iconPath": "static/icon/news.png","selectedIconPath":"static/icon/news-active.png"}],"color":"#dadadb","selectedColor":"#d81e06"}

常用api

uni.navigateTo(OBJECT)

保留当前页面,跳转到应用内的某个页面,使用uni.navigateBack可以返回到原页面。

//在起始页面跳转到test.vue页面并传递参数
uni.navigateTo({url: 'test?id=1&name=uniapp'
});

uni.switchTab(OBJECT)

跳转到 tabBar 页面,并关闭其他所有非 tabBar 页面。

uni.switchTab({url: '/pages/index/index'
});

uni.setStorage(OBJECT)

将数据存储在本地缓存中指定的 key 中,会覆盖掉原来该 key 对应的内容,这是一个异步接口。

uni.setStorage({key: 'storage_key',data: 'hello',success: function () {console.log('success');}
});

uni.setStorage(OBJECT)

将数据存储在本地缓存中指定的 key 中,会覆盖掉原来该 key 对应的内容,这是一个异步接口。

const value = uni.getStorageSync('storage_key');if (value) {console.log(value);}

uni.chooseImage(OBJECT)

从本地相册选择图片或使用相机拍照。

uni.chooseImage({count: 6, //默认9sizeType: ['original', 'compressed'], //可以指定是原图还是压缩图,默认二者都有sourceType: ['album'], //从相册选择success: function (res) {console.log(JSON.stringify(res.tempFilePaths));}
});

uni.previewImage(OBJECT)

预览图片。

// 预览图片previewImg(current) {uni.previewImage({urls: [current], // 需要预览的图片链接列表    current  // current 为当前显示图片的链接/索引值,不填或填写的值无效则为 urls 的第一张})},

uni.showToast(OBJECT)

显示消息提示框。

uni.showToast({title: '标题',duration: 2000
});

uni.showLoading(OBJECT)

显示 loading 提示框, 需主动调用 uni.hideLoading 才能关闭提示框。

uni.showLoading({title: '加载中'
});

uni.showModal(OBJECT)

显示模态弹窗,可以只有一个确定按钮,也可以同时有确定和取消按钮。类似于一个API整合了 html 中:alert、confirm。

uni.showModal({title: '提示',content: '这是一个模态弹窗',success: function (res) {if (res.confirm) {console.log('用户点击确定');} else if (res.cancel) {console.log('用户点击取消');}}
});

组件库uni-ui

下载地址:https://ext.dcloud.net.cn/plugin?id=55
代码示例地址 :https://ext.dcloud.net.cn/plugin?id=4941
组件演示地址:https://hellouniapp.dcloud.net.cn
组件文档地址:https://uniapp.dcloud.io/component/uniui/uni-ui

推荐使用HBuilder X直接创建uni-ui项目

uni-app 框架的使用相关推荐

  1. 切换 uniapp_万能前端框架uni app初探03:底部导航开发

    前言 本节我们使用uni app的底部导航功能,点击不同tab会显示不同页面,这个功能在实际项目开发中几乎是必备的. 一.基础知识 1.tabBar 如果应用是一个多 tab 应用,可以通过 tabB ...

  2. HbuilderX:uni app踩坑之uView-ui

    HbuilderX:uni app踩坑之uView-ui 最近在自学uniapp,想找一个ui框架提高一下学习和开发的效率,于是就网上冲浪,浪来浪去,最后选择了uView-ui这款.其实有些框架我是有 ...

  3. uni app map 地图 漂浮问题及方案

    uni app map 地图 漂浮问题及方案 文章页有图片导致的问题,图片没加载出来,导致文章内容高度不固定,如果图片没加载出来,高度就是0,如果此时开始加载map,那么map就在那里加载,map原生 ...

  4. uni.app H5(微信公众号定位) uni.getLocation

    最近在开发公众号,由于之前经常使用uni,app写APP,索性就用uni.app来开发公众号了, 不过也遇到了一个问题,就是在公众号的首页要获取用户的定位.我看了看官网的API 有个uni.getLo ...

  5. HBuilder X ——Uni app 学习笔记(一)

    HBuilder X --Uni app 学习笔记(一) 1.pages.json配置 *pages数组中第一项表示应用启动页,数组中其他项为项目中所有页面路径. enablePullDownRefr ...

  6. uni app中使用图表

    关于在uni app中运用图表 今天写项目,需要在uni app中使用图表,我使用的是ucharts. 具体操作如下 1.下载 ucharts可以直接在uni app的插件市场下载安装. 先在插件市场 ...

  7. uni app 自动化索引列表

    uni app 自动化索引列表,官方推荐的第三方插件 https://ext.dcloud.net.cn/plugin?id=375 [{"letter": "A&quo ...

  8. 使用cordova + vue搭建混合app框架

    1. 前言:在进行hybrid app开发时,可以采用vue.js前端框架进行h5页面开发,然后使用跨平台cordova工具打包成app,如android或ios等,再h5页面也可以使用cordova ...

  9. 简易集成的MVP模块化App框架(1/3)

    前言 一直想整理一个自己app框架,现在刚好不是很忙就整理一下,尚不成熟还有待改进 大纲 1.整体结构:MVP模式+模块化 2.网络框架:Retrofit+Rxjava 3.屏幕适配方案:头条的And ...

  10. uni App+H5 实现人脸识别

    uni App+H5 实现人脸识别 通过h5的视频video管理设备摄像头(不要关),在打开视频摄像时快照截取人脸照片传送到后台通过API接口调用百度人脸识别结果并通过返回数据解析自己业务需求. 1. ...

最新文章

  1. Nginx与PHP(FastCGI)的安装、配置、优化
  2. 计算机组成原理 — FPGA 现场可编程门阵列
  3. ArrayAdapter的使用
  4. 通过LDAP验证Active Directory服务
  5. Unity3damp;amp;C#分布式游戏服务器ET框架介绍-组件式设计
  6. kotlin 判断数字_Kotlin程序检查给定数字是正数,负数还是零
  7. (转)SpringMVC学习(八)——SpringMVC中的异常处理器
  8. java实现kmp_java 实现KMP算法
  9. tomcat的localhost_access_log日志文件
  10. postman访问abp接口因cookies问题导致400错误
  11. SQL Cookbook(读书笔记)No.2
  12. 1055 集体照 (25 分)
  13. 【测试开发】Python—zipfile库文件压缩封装
  14. nps+Proxifier搭建socks5代理隧道进行内网穿透
  15. “奇点”临近:2045,人类永生
  16. php curl couldnt connect to host,linux curl命令:curl: (7) couldn't connect to host ?
  17. 股市逃顶的技巧和方法
  18. Eclipse安装插件的方法
  19. python如何逐行读取文件_Python逐行读取文件中内容的简单方法
  20. 苹果ll是什么版本_新的iPad Pro和旧版本有什么区别?苹果背后的策略是什么?...

热门文章

  1. Jquery的3种遍历方式
  2. JavaScript 逆向调试技巧
  3. 使你成为高手 HTC手机指令大全全覆盖
  4. 计算机应用中组装测试是什么意思,新组装的电脑用什么软件测验性能最好???
  5. 小度音箱dueros授权
  6. imx8mq-evk快速启动-bootloader时间优化(eMMC启动)
  7. django数据库字段类型
  8. docker笔记(二)之镜像加速器
  9. C#窗体程序通过泛型List实现账号登录、账号注册、账号注销、修改密码(不定时更新)
  10. Leetcode.1129 颜色交替的最短路径