【Uniapp】一、 UniAPP框架基本信息

2023-11-08

1 什么是 UniAPP ?

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

uni-app在手,做啥都不愁。甚至不跨端,也是更好 uni-app 的小程序开发框架,更好的 App 跨平台框架,更方便的 H5 开发框架。

你都可以快速交付,不需要转换开发思维,不需要更改开发习惯。

2 为什么要选择 UniAPP ?

  1. 开发者/案例数量更多

几十万应用、uni统计月活12亿、70+微信/qq群、更高的百度指数跨端完善度更高,真正落地的提高生产力。

  1. 平台能力不受限

在跨端的同时,通过条件编译+平台特有API调用,可以优雅的为某平台写个性化代码,调用专有能力而不影响其他平台。支持原生代码混写和原生sdk集成。

  1. 性能体验优秀

加载新页面速度更快、自动diff更新数据。App端支持原生渲染,可支撑更流畅的用户体验。小程序端的性能优于市场其他框架。

  1. 周边生态丰富

插件市场数千款插件。支持NPM、支持小程序组件和SDK。微信生态的各种sdk可直接用于跨平台App。

  1. 学习成本低

基于通用的前端技术栈,采用vue语法+微信小程序api,无额外学习成本。

  1. 开发成本低

不止开发成本,招聘、管理、测试各方面成本都大幅下降。

3 UniAPP 功能框架

img

4 UniAPP 开发工具

  1. 下载开发工具,HBuilderX:
    HBuilderX是通用的前端开发工具,下载App开发版。

  2. 创建 uni-app 项目
    选择uni-app类型,输入工程名,选择模板,点击创建,即可成功创建。
    uni-app自带的模板有 Hello uni-app ,是官方的组件和API示例。还有一个重要模板是 uni ui项目模板,日常开发推荐使用该模板,已内置大量常用组件。

  3. 运行 uni-app
    主要包括:浏览器运行、真机运行、小程序运行等

  4. 发布 uni-app
    主要包括:云端原生 APP 、离线原生 APP、H5、各种小程序

5 UniAPP 框架简介

开发规范约定

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

资源路径说明

template内约会静态资源,如image,video等标签的src属性时,可以使用相对路径或绝对路径,形式如下

<!-- 绝对路径,/static指根目录下的static目录,在cli项目中/static指src目录下的static目录 -->
<image class="logo" src="/static/logo.png"></image>
<image class="logo" src="@/static/logo.png"></image>
<!-- 相对路径 -->
<image class="logo" src="../../static/logo.png"></image>

注意:

  • @初始的绝对路径以及相对路径会通过base64转换规则校验
  • 约会的静态资源在非h5平台,均不转为base64。
  • H5平台,小于4kb的资源会被转换成base64,其余不转。

js文件或script标签内(包括renderjs等)日期js文件时,可以使用相对路径和绝对路径,形式如下

// 绝对路径,@指向项目根目录,在cli项目中@指向src目录
import add from '@/common/add.js'
// 相对路径
import add from '../../common/add.js'

css文件或style标签内约会css文件时(scss,less文件同理),可以使用相对路径和绝对路径,形式如下

/* 绝对路径 */
@import url('/common/uni.css');
@import url('@/common/uni.css');
/* 相对路径 */
@import url('../../common/uni.css');

css文件或style标签内引用的图片路径,可以使用相对路径也可以使用绝对路径,形式如下

/* 绝对路径 */
background-image: url(/static/logo.png);
background-image: url(@/static/logo.png);
/* 相对路径 */
background-image: url(../../static/logo.png);

总结

到这里我们就了解了Uniapp开发小程序的优势,及项目资源引用的注意事项,下一篇将继续进行项目搭建等工作。大家在配置的过程中难免会遇到一些问题,欢迎大家在评论区留言一起解决,如果这篇文章对你有所帮助就点个赞吧

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

【Uniapp】一、 UniAPP框架基本信息 的相关文章

  • C++ 模板特化

    我们不可能写出对所有类型都适合的模板 某些情况下 通用模板定义对于某个类型可能是完全错误的 这个时候我们需要编写比模板函数更有效率的函数 这就是模板特化 思考一个例子 编写比较函数的泛型函数模板 template
  • 使用IDEA打不开setting怎么解决?

    问题 汉化IDEA后 怎么打不开setting 解决办法 在关闭idea的条件下 使用解压软件打开汉化包 打开不是解压哦 将其messages文件夹内的 IdeBundle properties 系统设置 setting 外观选项加载不出来
  • 建立实体类和数据库映射(注解)

    1 建立实体类和数据库映射 Select select from user Results id resultMap value Result id true property userId column id Result propert
  • 服务器中勒索病毒了

    非常重要的一点 备份好数据 异地备份
  • 多版本node的安装与切换详细操作

    多版本node的安装与切换详细操作 安装多版本node的原因 方法一 利用nvm进行管理 NVM 简介 安装前须知 卸载已安装的nodeJS nvm 的安装与使用 node 的不同版本安装及切换 方法二 通过配置环境变量 切换node时只需
  • LeetCode刷题指南(一)

    以下是我个人做题过程中的一些体会 1 LeetCode的题库越来越大 截止到目前 已经有321个问题了 对于大多数人来说 没有时间也没有必要把所有题目都做一遍 时间充裕可以随意 刷个100题左右应该就差不多了 可以考虑序号为前100多的题目
  • js编程题总结

    lazyman 实现一个LazyMan 可以按照以下方式调用 LazyMan Hank 输出 Hi This is Hank LazyMan Hank sleep 10 eat dinner 输出 Hi This is Hank 等待10秒
  • QT常见错误及解决方法

    1 error header was not declared in this scope 在使用此变量之前没有对其进行定义 2 error RtlWerpReportException failed with status code 10

随机推荐

  • 树莓派体验12 - 树莓派I2C接口获取温湿度

    i2c tools工具安装 apt get install i2c tools i2c tools包含如下命令 i2cdetect i2cdump i2cget i2cset 通过raspi config打开树莓派I2C 执行i2cdete
  • 30天自制操作系统学习-第14天

    1 提高分辨率 修改asmhead nas画面模式的设定 只考虑支持QEMU模拟器的显卡 设定画面模式 MOV BX 0x4101 VBE的640x480x8bi彩色 MOV AX 0x4f02 INT 0x10 MOV BYTE VMOD
  • Windows CMD 添加自定义快捷指令

    首先在想要存放快捷指令文件的位置创建一个txt文档 我放在了c盘的user文件夹下 使用vscode打开刚刚创建的txt文件 把后缀改为 bat记住要确认改成了 bat而不是 bat txt 随便写点快捷指令 可以先拿start 浏览器来测
  • 基于SSM的商城管理系统

    1 项目介绍 基于SSM的商城管理系统6拥有管理员账号 具有商品管理 会员管理 添加视频 购物车 搜索商品等功能 2 项目技术 后端框架 SSM Spring SpringMVC Mybatis 前端技术 jsp css JavaScrip
  • ResNet解决了什么问题?

    ResNet解决的根本问题是什么 相同深度的一般前向网络的解集合和resnet的解集合是相等的 所以resnet解决的并不是模型表达能力的问题 而是模型优化问题 ResNet是如何解决优化问题的 1 更平滑的解空间的流形 从文献Visual
  • 锋利的 jQuery(一)--配置jQuery、 解决jQuery和其他库的冲突

    1 配置jQuery环境 1 获取jQuery最新版本 进入jQuery的官方网站http jquery com 如图所示的右边的GRAB THE LATEST VERSION区域 下载最新的jQuery库文件 2 jQuery库类型说明
  • 【图像处理】阈值分割

    图像阈值分割 一 简介 阈值分割常用在灰度图像中 将灰度值以一定的阈值进行分割 分为0或者255 使图像的像素值只有0或者255 非黑即白 由于不同物体的像素值不同 根据设置的阈值 将图像中的物体以像素级分割出来 有利于图像的进一步处理 使
  • for /f 用法详解

    一 for f 的基本用法 提取文本信息 则是for f的拿手好戏 读取文件内容 提取某几行字符 截取某个字符片段 对提取到的内容再切分 打乱 杂糅 只要你所能想到的花样 for f 都会想方设法帮你办到 因为 for f 就是被设计成专门
  • 【零碎知识点】- 预览图片

    原理 在图片上传之前 获取到图片本地并在Web页面进行展示以达到预览到效果 PS 生成的图片地址是临时的 下次上传相同图片 该地址会改变 伪代码 获取上传图片的本地地址 function imgHandler fileInfo File c
  • 少儿开始学编程法则

    近几年 鼓励全国实施AI教育 另一方面许多名校取消了奥数加分项 转而开设信息奥赛 格物斯坦表示 少儿编程学得好 对于未来升学工作都大有裨益 为了孩子的将来 家长们都在问少儿开始学编程的合适年龄 首先我们要了解学编程到底是学什么 和大学的计算
  • Go 包依赖管理工具 —— govendor

    govendor 是一个基于 vendor 机制实现的 Go 包依赖管理命令行工具 与原生 vendor 无侵入性融合 也支持从其他依赖管理工具迁移 可以很方便的实现同一个包在不同项目中不同版本 以及无相互侵入的开发和管理 vendor 特
  • 定义一个圆类Circle,成员变量:半径 radius;成员方法:构造方法、get和set半径的方法、计算面积和周长的方法。

    1 定义一个圆类Circle 成员变量 半径 radius 成员方法 构造方法 get和set半径的方法 计算面积和周长的方法 定义圆柱和圆锥类 定义相应的变量成员和成员方法 使用以上类编 程 输出圆的面积和圆柱 圆锥的体积 class C
  • 02梯度下降

    参考 http biranda top Pytorch学习笔记004 梯度下降算法 随机梯度下降 补充 五折交叉验证 如下右图 在不同的训练集和测试集划分方法下 test MSE的变动是很大的 而且对应的最优degree也不一样 所以如果我
  • 链游开发 链游游戏开发

    链游就是指区块链技术上运作的手机游戏 使游戏玩家第一次变成手机游戏真正的主人 游戏玩家在游戏里面所具备的的武器装备是可以随意交易的NFT 不会受到游戏开发商的操纵 别的游戏开发商可以对于游戏玩家的NFT搭建新的游戏 假如之前的游戏软件开发得
  • MySQL中的DDL常规操作总结

    MySQL中的DDL常规操作总结 相信对于一个后端开发人员来说 SQL的DML Data Manipulation Language 操作是很熟悉的 毕竟在忙于写业务代码的同时 对数据操作最多的就是增加 Create 检索 Retrieve
  • 浏览器汇总、可信浏览器

    文章目录 1 浏览器引擎分类 2 浏览器组成 3 内核 4 浏览器中的进程与线程 6 页面渲染流程 7 回流与重绘 重排 重绘 8 优化渲染性能 9 输入URL地址 浏览器经历了什么 真实dom树生成及解析流程 10 浏览器访问网页 第一次
  • 关注 OpenStack 的筒子们,福利来啦!

    2017 OpenStack Days China 将于 2017 年 7 月 24 日 25 日 周一至周二 在北京国家会议中心隆重召开 我们非常荣幸能和大家一起见证并打造这样一个强有力的 大规模的云计算标准软件平台 这一次 OpenSt
  • 如何在MarkDown文件中插入Emoji表情?

    如何在MarkDown文件中插入Emoji表情 解决方法 markdown语法的目的是使用户专注于文本内容编辑 在双手不离开键盘的情况下也能对页面进行排版编辑 提高内容书写的效率和可读性 如果在文档中添加一些符号表情 也能为文本增添一些趣味
  • 如何通过JDBC连接远程服务端的数据库

    如何通过JDBC连接远程服务端的数据库 1 本地navicat链接到远程服务端 2 Myeclipse创建JDBC 1 本地navicat链接到远程服务端 首先 打开远程服务器 远程数据库中新建查询 输入SQL语句 表示允许任何主机访问数据
  • 【Uniapp】一、 UniAPP框架基本信息

    1 什么是 UniAPP uni app 是一个使用 Vue js 开发所有前端应用的框架 开发者编写一套代码 可发布到 iOS Android H5 以及各种小程序 微信 支付宝 百度 头条 QQ 钉钉 等多个平台 uni app在手 做