uni-app的基本使用教程

目录
  • 一、uni-app介绍
    • 1.1为什么要去学习uni-app?
    • 1.2 环境搭建
    • 1.3 利用HbuilderX初始化项目
    • 1.4 运行项目
    • 1.5 介绍项目目录和文件作用
  • 2.全局配置和页面配置
    • 2.1 通过globalStyle进行全局配置
    • ​2.2 创建新的message页面
    • 2.3 通过pages来配置页面
    • 2.4 配置tabbar
    • 2.5 condition启动模式配置

一、uni-app介绍

​​uni-app​​​ 是一个使用 ​ ​Vue.js​​ 开发所有前端应用的框架,开发者编写一套代码,可发布到iOS、Android、H5、以及各种小程序(微信/支付宝/百度/头条/QQ/钉钉)等多个平台。

即使不跨端,​​uni-app​​同时也是更好的小程序开发框架。

具有vue和微信小程序的开发经验,可快速上手uni-app

1.1为什么要去学习uni-app?

相对开发者来说,减少了学习成本,因为只学会uni-app之后,即可开发出iOS、Android、H5、以及各种小程序的应用,不需要再去学习开发其他应用的框架,相对公司而言,也大大减少了开发成本。

1.2 环境搭建

安装编辑器HbuilderX ​(应用商城下载即可)

HBuilderX是通用的前端开发工具,但为​​uni-app​​做了特别强化。

下载App开发版,可开箱即用

安装微信开发者工具 微信开发者工具下载地址与更新日志 | 微信开放文档

1.3 利用HbuilderX初始化项目

点击HbuilderX菜单栏文件>项目>新建
选择uni-app,填写项目名称,项目创建的目录

1.4 运行项目

在菜单栏中点击运行,运行到浏览器,选择浏览器即可运行

在微信开发者工具里运行:进入hello-uniapp项目,点击工具栏的运行 -> 运行到小程序模拟器 -> 微信开发者工具,即可在微信开发者工具里面体验uni-app

在微信开发者工具里运行:进入hello-uniapp项目,点击工具栏的运行 -> 运行到手机或模拟器 -> 选择调式的手机

注意:

如果是第一次使用,需要先配置小程序ide的相关路径,才能运行成功
微信开发者工具在设置中安全设置,服务端口开启

1.5 介绍项目目录和文件作用

  • ​​pages.json​​ 文件用来对 uni-app 进行全局配置,决定页面文件的路径、窗口样式、原生的导航栏、底部的原生tabbar 等
  • ​​manifest.json​​ 文件是应用的配置文件,用于指定应用的名称、图标、权限等。
  • ​​App.vue​​​是我们的跟组件,所有页面都是在​​App.vue​​下进行切换的,是页面入口文件,可以调用应用的生命周期函数。
  • ​​main.js​​​是我们的项目入口文件,主要作用是初始化​​vue​​实例并使用需要的插件。
  • ​​uni.scss​​​文件的用途是为了方便整体控制应用的风格。比如按钮颜色、边框风格,​​uni.scss​​文件里预置了一批scss变量预置。
  • ​​unpackage​​就是打包目录,在这里有各个平台的打包文件
  • ​​pages​​所有的页面存放目录
  • ​​static​​静态资源目录,例如图片等
  • ​​components​​组件存放目录

为了实现多端兼容,综合考虑编译速度、运行性能等因素,​​uni-app​​ 约定了如下开发规范:

页面文件遵循​ ​Vue 单文件组件 (SFC) 规范​​
组件标签靠近小程序规范,详见​ ​uni-app 组件规范​​
接口能力(JS API)靠近微信小程序规范,但需将前缀​​wx​​​ 替换为​​uni​​​,详见​ ​uni-app接口规范​​
数据绑定及事件处理同​​Vue.js​​ 规范,同时补充了App及页面的生命周期
为兼容多端运行,建议使用flex布局进行开发

2.全局配置和页面配置

2.1 通过globalStyle进行全局配置

用于设置应用的状态栏、导航条、标题、窗口背景色等。​

属性 类型 默认值 描述
navigationBarBackgroundColor HexColor #F7F7F7 导航栏背景颜色(同状态栏背景色)
navigationBarTextStyle String white 导航栏标题颜色及状态栏前景颜色,仅支持 black/white
navigationBarTitleText String   导航栏标题文字内容
backgroundColor HexColor #ffffff 窗口的背景色
backgroundTextStyle String dark 下拉 loading 的样式,仅支持 dark / light
enablePullDownRefresh Boolean false 是否开启下拉刷新
onReachBottomDistance Number 50 页面上拉触底事件触发时距页面底部距离,单位只支持px,

​2.2 创建新的message页面

右键pages新建message目录,在message目录下右键新建.vue文件,并选择基本模板

<template>
  <view>
    这是信息页面
  </view>
</template>

<script>
</script>

<style>
</style>

2.3 通过pages来配置页面

属性 类型 默认值 描述
path String   配置页面路径
style Object   配置页面窗口表现

pages数组数组中第一项表示应用启动页

"pages": [ 、
    {
      "path":"pages/message/message"
    },
    {
      "path": "pages/index/index",
      "style": {
        "navigationBarTitleText": "uni-app"
      }
    }
  ]

通过style修改页面的标题和导航栏背景色,并且设置h5下拉刷新的特有样式

"pages": [ //pages数组中第一项表示应用启动页,参考:https://uniapp.dcloud.io/collocation/pages
    {
      "path":"pages/message/message",
      "style": {
        "navigationBarBackgroundColor": "#007AFF",
        "navigationBarTextStyle": "white",
        "enablePullDownRefresh": true,
        "disableScroll": true,
        "h5": {
          "pullToRefresh": {
            "color": "#007AFF"
          }
        }
      }
    }
  ]

2.4 配置tabbar

如果应用是一个多 tab 应用,可以通过 tabBar 配置项指定 tab 栏的表现,以及 tab 切换时显示的对应页。

Tips:

  • 当设置 position 为 top 时,将不会显示 icon
  • tabBar 中的 list 是一个数组,只能配置最少2个、最多5个 tab,tab 按数组的顺序排序。
属性 类型 必填 默认值 描述 平台差异说民
color HexColor   tab上的文字默认颜色  
selectColor HexColor   tab上的文字选中时的颜色  
backgroundColor HexColor   tab的背景颜色  
borderStyle String black tabbar 上边框的颜色,仅支持 black/white App 2.3.4+ 支持其他颜色值
list Array   tab 的列表,详见 list 属性说明,最少2个、最多5个 tab  
position String bottom 可选值 bottom、top top 值仅微信小程序支持

案例代码:

"tabBar": {
    "list": [
      {
        "text": "首页",
        "pagePath":"pages/index/index",
        "iconPath":"static/tabs/home.png",
        "selectedIconPath":"static/tabs/home-active.png"
      },
      {
        "text": "信息",
        "pagePath":"pages/message/message",
        "iconPath":"static/tabs/message.png",
        "selectedIconPath":"static/tabs/message-active.png"
      },
      {
        "text": "我们",
        "pagePath":"pages/contact/contact",
        "iconPath":"static/tabs/contact.png",
        "selectedIconPath":"static/tabs/contact-active.png"
      }
    ]
  }

2.5 condition启动模式配置

启动模式配置,仅开发期间生效,用于模拟直达页面的场景,如:小程序转发后,用户点击所打开的页面。

属性说明:

属性 类型 是否必填 描述
current Number 当前激活的模式,List 节点的索引值
list Array 启动模式列表

list说明:

属性 类型 是否必填 描述
name String 启动模式名称
path String 启动页面路径
query String 启动参数,可在也页面的onLoad函数里获得

到此这篇关于uni-app的基本使用的文章就介绍到这了,更多相关uni-app基本使用内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • 在uni-app中使用element-ui的方法与报错解决

    uni-app的相关UI组件库中可能会没有你想要的功能组件,自己去开发的话需要花很多时间,此时咱们可以将别的UI组件库给安装到uni-app中来,达到直接使用该UI组件库的功能组件,例如,安装element-ui uni-app使用element-ui需安装以下插件 npm i element-ui -S 按需引入组件需要装以下插件 npm install babel-plugin-component -D 当你安装完以上插件后,需要在main.js中进行引入,例如引入全部: import Vu

  • 使用uni-app开发微信小程序的实现

    前言 9月份,开始开发微信小程序,也曾调研过wepy/mpvue,考虑到后期跨端的需求,最终选择使用了uni-app,本文主要介绍如何使用uni-app搭建小程序项目,以及自己对框架的补充,包括封装request接口,引用color-ui,动态设置底部tab页等,详情见下文 uni-app 介绍(官网) uni-app是一个使用Vue.js 开发所有前端应用的框架,开发者编写一套代码,可发布到iOS.Android.H5.以及各种小程序(微信/支付宝/百度/头条/QQ/钉钉)等多个平台. 即使不

  • uni-app中弹窗的使用与自定义弹窗

    目录 一.uni-app中自带的弹窗 二.实例 1.uni.showToast(OBJECT)(消息提示框) 2.uni.showModal(OBJECT)(显示两个按钮的提示框) 3.uni.showActionSheet(OBJECT)(从底部向上弹出操作菜单) 补充:uniapp自定义弹窗 总结 提示:以下是本篇文章正文内容,下面案例可供参考 一.uni-app中自带的弹窗 示例:在前端开发中,为了优化用户的交互体验,常需要用到弹窗来进行提示,引导用户操作,而js里的alter用起来是真的

  • uni-app使用countdown插件实现倒计时

    本文实例为大家分享了使用countdown插件实现倒计时的具体代码,供大家参考,具体内容如下 实现的效果如下: 这里实现的是一个活动倒计时,获取当前时间和活动开始时间,相减得出的时间差就是我们需要的倒计时.使用插件很方便. 首先新建一个项目,选择uni-app,模板选择hello-uniapp,里面有官网的组件可以直接使用.创建之后将components整个文件夹复制到自己的项目中. 在需要使用倒计时的页面引入组件 <script> import uniCountdown from '@/co

  • 十步搞定uni-app使用字体图标的方法

    uni-app简介 uni-app是一个使用Vue.js开发跨平台应用的前端框架,开发者编写一套代码,可编译到iOS.Android.H5.小程序等多个平台.   uni-app框架由Dcloud即数字天堂(北京)网络技术有限公司推出,该公司主要产品有Web开发IDE Hbuiler.HbuilderX,前端框架mui.uni-app,增强版的手机浏览器引擎H5plus等. uni-app中使用字体图标图标的下载 首先去阿里图标库选择要用的图标,并且打包下载下来,步骤如下 1. 2. 3. 4.

  • 详解使用uni-app开发微信小程序之登录模块

    从微信小程序官方发布的公告中我们可获知:小程序体验版.开发版调用 wx.getUserInfo 接口,将无法弹出授权询问框,默认调用失败,需使用 <button open-type="getUserInfo"></button> 引导用户主动进行授权操作: 1.当用户未授权过,调用该接口将直接报错 2.当用户授权过,可以使用该接口获取用户信息 但在实际开发中我们可能需要弹出授权询问框,因此需要我们自己来写模拟授权弹框(主要是对<buttonopen-typ

  • uni-app使用微信小程序云函数的步骤示例

    创建云函数目录 首先,我们需要在uni-app项目文件夹下,创建一个云函数目录,路径随意,我这里是functions.然后先随便在里面放一些文件,这里以new_file.css为例.(放文件的原因是:确保编译成小程序后cloudfunctions文件夹存在.如果该文件夹下没有文件,默认是不会在微信小程序开发平台中显示该文件夹的.) 修改manifest.json 在uni-app根目录下,修改manifest.json中的微信小程序项,结构如下 "mp-weixin" : { /* 小

  • uni app仿微信顶部导航条功能

    最近一直在学习uni-app开发,由于uniapp是基于vue.js技术开发的,只要你熟悉vue,基本上很快就能上手了. 在开发中发现uni-app原生导航栏也能实现一些顶部自定义按钮+搜索框,只需在page.json里面做一些配置即可.设置app-plus,配置编译到App平台的特定样式.dcloud平台对app-plus做了详细说明:app-plus配置,需注意 目前暂支持H5.App端,不支持小程序. 在page.json里配置app-plus即可 { "path": "

  • iOS中使用URL Scheme进行App跳转的教程

    URL Scheme的作用 我们都知道苹果手机中的APP都有一个沙盒,APP就是一个信息孤岛,相互是不可以进行通信的.但是iOS的APP可以注册自己的URL Scheme,URL Scheme是为方便app之间互相调用而设计的.我们可以通过系统的OpenURL来打开该app,并可以传递一些参数. 例如:你在Safari里输入www.alipay.com,就可以直接打开你的支付宝app,前提是你的手机装了支付宝.如果你没有装支付宝,应该显示的是支付宝下载界面,点击会跳到AppStore的支付宝下载

  • Python的Flask框架中@app.route的用法教程

    在我上一篇文章,我搭了一个框架,模拟了Flask网站上"@app.route('/')"第一条例子的行为. 如果你错过了那篇"这不是魔法",请点击这里. 在这篇文章中,我们打算稍微调高点难度,为我们的URL加入可变参数的能力,在本文的最后,我们将支持下述代码段所期望达到的行为. app = Flask(__name__) @app.route("/hello/<username>") def hello_user(username):

  • Android桌面组件App Widget用法入门教程

    本文实例讲述了Android桌面组件App Widget用法.分享给大家供大家参考.具体如下: Android开发应用除了程序应用,还有App Widget应用.好多人会开发程序应用而不会开发App Widget应用.本帖子就是帮助大家学习如何开发App Widget应用的. 先简单说说App Widget的原理.App Widget是在桌面上的一块显示信息的东西,通过单击App Widget跳转到程序入口类.而系统自带的程序,典型的App Widget是music,这个Android内置的音乐

  • iOS App引导页开发教程

    引导页功能简介 方式一: 判断程序是否首次启动,如果是将GuidePageViewController作为窗口的根视图控制器.GuidePageViewController有三个子控件:一个UIScrollView.一个UIPageControl.一个UIButton(默认隐藏),UIScrollView有多个UIImageView子控件,当滚动到最后一页UIButton展示,点击立即体验然后将窗口的根视图控制器设置为UITabBarController: 方式二: 也可以直接将根视图控制器设置

  • AngularJS 2.0入门权威指南

    学习 Angular 2 当越来越多的 web app 使用 Angular 1构建的时候,更快更强大的 Angular 2 将会很快成为新的标准. Angular的新约定使得它更容易去学习.更快的去开发 app.通过本教程学习更快速.更强大的 Angular 版本. Angular 一个跨移动和桌面的框架 快速开始 本指南指导你如何构建一个简单 Angular app. 可以使用typescript/ JavaScript / Dart任意一种语言来编写Angular app,本教程采用Jav

  • uni-app如何实现增量更新功能

    都知道,很多APP都有增量更新功能,Uni APP也是在今年初,推出了增量更新功能,今天我们就来学习一波. 当然,很多应用市场为了防止开发者不经市场审核许可,给用户提供违法内容,对增量更新大多持排斥态度,特别是apple.所以拥有增量更新的app,需要注意以下几点: 1.上架审核期间不要弹出增量更新提示 2.增量更新内容使用https下载,避免被三方网络劫持 3.不要更新违法内容.不要通过增量更新破坏应用市场的利益,比如iOS的虚拟支付要给Apple抽佣等 通过本章节你能学到那些? 1.如何实现

  • 详解uniapp的全局变量实现方式

    前言 本文整理了一些uniapp全局变量的实现方式,细节知识来自于uView官网中对uniapp中的全局变量实现,感兴趣的同学可以前往uView官网搜索vuex进行查看 全局变量的实现方式 一般来说在uniapp中有以下几种方式 本地存储 配置文件 挂载到 Vue.prototype globalData vuex 下面对这5种方式的实现进行介绍 本地存储 永久存储,以app为例即使该应用被关闭,该数据依然会被存储 这是一种永久的存储方式,类似于web的Local Storage(有关于Cook

  • Flask搭建一个API服务器的步骤

    一.API列表 1. 获取作品列表 ① 获取手工制作作品列表. 请求格式: http://api.mculover666.cn:9999/twkk/list/hand_made 返回结果: { goods_num: 3, goods_item: [ { goods_id: 1, goods_name: "goods1", goods_img_url: "xxx" }, { goods_id: 2, goods_name: "goods1", go

  • HBuilder打包App方法(图文教程)

    HBuilder是DCloud(数字天堂)推出的一款支持HTML5的Web开发IDE.该软件既可以支持web代码编写,也可以将已经编写好的项目代码打包为手机APP. HBuilder提供的打包有云端打包和本地打包两种,云端打包的特点是DCloud官方配置好了原生的打包环境,可以把HTML等文件编译为原生安装包. 1,下载HBuilder,注册并登陆.首先打开"文件"-"新建"-"移动APP",输入"应用名称","位置

随机推荐