uni app 学习【陆续更新】

    文件打包不应大于2M  若过大应分包

--使用HbuliderX 创建项目

  新建项目  选择uni-app  默认模板 选择路径 输入项目名  / hello uni-app  更适合开发

--项目基本构成

  

  components:  组件

  pages:  页面文件夹 

  static:  静态资源文件夹  存放图片、视频等   ※必须存放于此文件夹

  App.vue:  配置全局的生命周期 和全局的样式

  main.js:  入口文件

  manifest.json:  项目配置文件

  pages.json:  配置页面的路由关系、导航栏、选项卡等。  pages内第一项为启动页 (类似小程序)

--接口部分 后续学习。

--页面样式与布局

  尺寸单位:  upx   

    px与upx的转换公式   设计稿   1px / 设计稿基准宽度 = 框架样式 1upx / 750upx     

    换言之  750 * 元素在设计稿中的宽度 / 设计稿基准宽度(这不类似小程序rpx吗)

    upx不支持动态传参   还是使用rpx多

  使用@import导入外联样式   相对路径  

  不能使用*选择器  page 相当于body节点

  字体文件小于 40kb  自动转换为 base64格式

  大于等于 40kb 则需要开发者转换 否则使用将不生效

  字体文件的引用路径推荐使用 -@开头的绝对路径

 --全局配置和页面配置

  通过pages来配置页面  就类似VUE router

  配置tabBar  (只写了部分功能)

    color                                                            默认颜色

    selectedColor                 选中时颜色

    backgrooundColor               背景色

    borderStyle               上边框颜色 可选值 black/white

    list                   列表  最多5项  最少两项

    position                位置 可选值 top/bottom  top只有微信小程序支持  并且不显示图片

    fontSize               文字默认大小

    height                默认高度

   配置condition    配置启动模式

--组件

  视图容器

    --view          类似 div标签

      hover-class               按下去的样式类

      hover-stop-propagation         是否冒泡

      hover-start-time              按下后多久出现样式类  单位毫秒

      hover-stay-time              手指松开后点击样式保持事件   单位毫秒

    --scroll-view      可滚动视图容器

    --swiper       滑块视图容器,比如用于轮播图banner

    --match-media     屏幕动态适配组件,比如窄屏上不显示i某些内容

    --movable-area      可拖动区域

    --moveable-view    可移动的试图容器,在页面中可以拖拽滑动或双指缩放. movable-view必须在movable-area组件中

    --cover-view      可覆盖在原生组件上的文本组件

    --cover-image      可覆盖在原生组件上的图片组件

  基础内容

    --icon         类似图标

    --text       类似 span标签

      selectable               文本是否可选  APP、H5

      user-select                文本是否可选  微信端

      space                   显示空格

    --rich-text   富文本

      一般就是请求后返回富文本类型 直接渲染  后续学习

    --progress  进度条

  表单组件

    --button    按钮组件

      size            大小

      type           样式类型

      plain          是否镂空 背景色透明

      disabled         是否禁用

      form-type          用于form组件  会触发 submit / reset 事件

      open-type         开放能力

    --checkbox    多项选择器

    --editor        富文本输入框

    --form       表单

    --input      输入框

    --label      标签

    --picker       弹出式列表选择

    ·表单组件

      H5的 select 标签用 picker 组件进行代替

      表单元素 radio 用 radio-group 组件代替

    --picker-view    窗体内嵌式列表选择器

    --radio      单项选择器

    --slider      滑动选择器

    --textarea     多行文本输入框

  路由与页面跳转

    --navigator     页面链接 类似a标签

  媒体组件

    --audio        音频

    --camera        相机  

    --image       图片

      src            资源地址

      mode           图片裁剪、缩放模式

    --video        视频

    --live-player      直播播放

    --live-pusher     实时音视频录制,也称直播推流

  地图

    --map        地图

  画布

    --canvas      画布

  webview

    --web-view      web浏览器组件

  广告

    --ad         广告组件

    --ad-draw      沉浸视频流广告组件

 --Scss & Iconfont使用

  --Iconfont

    下载后将字体文件提出  放入iconfont 文件夹  在App.vue  或者某个页面  @import 引入

    将.CSS 文件的地址改成 ~@/     后面相对地址   剩下就是正常使用

  --Scss

    需要插件里下载才能使用

    按照要求下载即可

--数据的绑定  同VUE 

  {{}}  内部支持字符串拼接  运算  三元运算符

  v-bind、v-for  都同VUE

  注册事件传递参数 都同VUE  也有用e的情况

 

--生命周期

  --应用的生命周期

    onLaunch        初始化完成时触发  只会触发一次

    onShow        页面启动 / 页面后台切前台时触发

    onHide        页面前台切后台时触发

    onError        页面错误时触发        

  --页面的生命周期

    onLoad        监听页面加载,七参数为上个页面传递的参数,参数类型为Object(用于页面传参)

    onShow          监听页面显示,页面每次出现在屏幕上都触发,包括从下级页面点返回露出当前页面

    onReady        监听页面初次渲染完成

    onHide        监听页面隐藏

    onUnload       监听页面卸载

  --组件的生命周期

    beforeCreate

    created

    beforeMount

    mounted

    beforeUpdat

    updated

    beforeDestory

    destoryed

--数据缓存

  Sync同步方法  不带是异步方法

  uni.setStorage

    key         键名

    data        键值

    success       接口调用成功后的回调函数

    fail        接口调用失败的回调函数

    complete      接口调用结束的回调函数(成功失败都执行)  .then .catch .finally

  uni.setStorageSync

    ('key',value)      这种方式就类似与localstorage.setItem()

  uni.getStorage

    key         键名

    success       接口调用成功后的回调函数

    fail        接口调用失败的回调函数

    complete      接口调用结束的回调函数(成功失败都执行)  .then .catch .finally

  uni.getStorageSync

    ('key')        这种方式就类似与localstorage.getItem()

  uni.removeStorage

    key         键名

    success       接口调用成功后的回调函数

    fail        接口调用失败的回调函数

    complete      接口调用结束的回调函数(成功失败都执行)  .then .catch .finally

  uni.removeStorageSync

    ('key')        这种方式就类似与localstorage.removeItem()

  uni.clearStorage   清除所有缓存数据  一般不用

  uni.clearStorageSync

--上传图片

  uni.chooseImage  (图片选择)

    count           选择的最大值  H5端无效

    sizeType           压缩图或者原图

    sourceType      album从相册   camera从相机 

    success          成功则返回本地文件路径列表 tempFilePaths    必填项

    fail          接口调用失败时回调

    complete       接口调用结束回调

  uni.previewImage(图片预览)

    current        当前看的图片

    urls           需要预览的图片链接列表 必填项

    indicator        图片指示器样式  default 底部圆点指示 number  顶部数字指示器 none  不显示指示器

    loop          是否循环

    longPressActions    长按图片显示操作菜单,如不填默认为保存相册

    success         成功则返回本地文件路径列表 tempFilePaths

    fail            接口调用失败时回调

    complete       接口调用结束回调

--导航的跳转和传参 navigator

  类似a标签 只能跳转本地页面  且必须在pages.json中注册

    url             应用内的跳转链接

    open-type         跳转方式

    delta            当open-type为 'navigateBack'时有效  表示回退的层数

    animation-type       当open-type 为 navigate  navigateBack 时有效  窗口显示/关闭动画的持续时间

    hover-class         指定点击时的样式类  当hover-class=“none”时  没有点击态效果

    hover-stop-propagation      指定是否阻止节点的祖先节点出现点击态       ?防止冒泡   应该是

--事件映射表

  

 --API部分

  应用级事件

    uni.onPageNotFound          监听应用要打开的页面不存在事件

    uni.onError                监听小程序错误事件

    uni.onAppShow              监听应用切前台事件

    uni.onAppHide             监听应用切后台事件

    uni.offPageNotFound          取消监听应用要打开的页面不存在事件

    uni.offError                取消监听应用错误事件

    uni.offAppShow              取消监听小程序切前台事件

    uni.offAppHide             取消监听小程序切后台事件

  上传、下载

    uni.uploadFile              上传  发起 POST 请求

    uni.downloadFile            下载

  获取地址

    uni.getLocation             获取当前的地理位置.速度

    uni.chooseLocation            打开地图选择位置

  查看位置

    uni.openLocation             使用应用内置地图查看位置

  地图组件控制

    uni.createMapContext           创建并返回map上下文 mapcontext 对象.   在自定义组件下, 第二个参数传入组件实例this,以操作组件内 <map> 组件

     ---- mapContext 通过 mapId 跟一个 <map> 组件绑定,通过它可以操作对应的 <map> 组件。  ----  感觉类似 canvas  还没用过

  图片

    uni.chooseImage             从本地相册选择图片或使用相机拍照

    uni.previewImage            预览图片

    uni.getImageInof              获取图片信息

    uni.saveImageToPhotoAlbum       保存图片到系统相册

    uni.compressImage            压缩图片接口,可选压缩质量

  文件

    uni.chooseFile               从本地选择文件(主要用于选择非媒体文件,如果选择的文件是媒体文件,另有三个专用API)

    wx.chooseMessageFile           从微信会话中选择文件

  交互反馈

    uni.showToast               显示消息提示框

    uni.hideToast               隐藏消息提示框

    uni.showLoading            显示loading提示框

    uni.hideLoading             隐藏loading提示框

    uni.showModal              显示模态弹窗

    uni.showActionSheet          从底部向上弹出的操作菜单

  拨打电话

    uni.makePhoneCall            拨打电话

  扫码

    uni.scanCode               调起客户端扫码界面 扫码成功后返回对应的结果

  剪切板

    uni.setClipBoardData           设置系统剪贴板的内容 

  用户截屏事件

    uni.onUserCaptureScreen         监听截屏事件  (各种小程序可以)   

  键盘

    uni.hideKeyboard             隐藏软键盘 

    uni.onKeyboardHeightChange         监听键盘高度变化事件

    uni.offKeyboardHeightChange         取消监听键盘高度变化事件       

posted on 2021-06-09 15:31  贲风  阅读(433)  评论(0编辑  收藏  举报