【uniapp】新课uniapp零基础入门到项目打包(微信小程序/H5/vue/安卓apk)全掌握

一、uniapp和HBuilderX介绍

uni-app官方网站:https://uniapp.dcloud.net.cn/

为什么要学习uniapp?

1、一套代码可以打包到不同的应用平台;一套代码编到十几个平台,这不是梦想。眼见为实,扫描以下二维码,亲自体验最全面的跨平台效果!

比较常用的平台如下

16ca95bbd21b448dba322b20f0c2a479.png

2、方便入手,就是使用vue语法写小程序;

3、丰富的生态环境,插件众多。

开发工具:HBuilderX,uniapp使用HBuilderX,两者都是一家公司的,DCloud公司(国产团队)。

主题:绿柔、雅蓝、酷黑

f8eb87b5a3e945adb9a4f3881c60ef03.png

二、

uni-app官网

2.1  新建项目、项目目录、预览uni项目

2.1.1 新建项目

1、新建项目。

40ee1e0493704d8c82aaed9c7cc90bcf.png

2、新建uni-app项目

新建uni-app项目、选择默认模板

项目名称、项目目录、选择vue2版本

b1e165eb1f8d4b98b6304d8246b84135.png

项目创建成功。

2.1.2 项目目录

项目基本构成

f6ba6e517b1b46418110729fb8127996.png

详细构成

2126538a3efd458d87c084669a7237d1.png

不适用unicloud时的项目目录及文件(上面有些目录和文件在下面没有提及,有的是打包后会生成的)

682ce9bdff9c4ca2970776fe90d14de8.png

2.1.3 预览uni项目

1 内置浏览器预览

选择运行,选择第2个,内置浏览器浏览

0e98991119bd40e9b6dbdc4534b852fa.png

2 外置浏览器浏览

1 配置,选择下面的配置Web服务器。

cabc646a9a474075b9e4583ee60f6369.png

2 选择谷歌浏览器打开的话,就配置谷歌浏览器的安装路径

37e15c39e50141f49a6242eac3795ed3.png

3 然后选择外置浏览器的chrome浏览器运行

04b88756012a40be87d9025d80fd34c3.png

运行成功,此时是pc端的页面。

691ea9c19bd44a96953b857d24ceae80.png

单击右键->检查->设备改为手机。

5ca46edd835f4b088d04dd68607c49fa.png

3 小程序浏览

1 配置

选择图示下面的运行设置

35b442cb999c4e7bb6de02428b21bc86.png

配置微信开发者工具的安装路径。

这里要安装微信开发者工具,且微信登陆。

58abf10ef24c4f1f926b7bda78a2e92e.png

2 运行,选择“运行到小程序模拟器”的第一项,微信开发者工具。

运行失败,到微信开发者工具里打开设置,找到安全设置,打开服务端口。

2b51d69928e146ca90b61b9b551324dd.png

此时再运行,即可在微信开发者工具里运行uni项目。

77f4bfa36b8d46779cf418fb65d1761f.png

以上介绍了浏览器和小程序上的预览,还可以打包成app,但是配置起来比较麻烦,先不说这么多了。

可以随便选择预览窗口,浏览器或者小程序都可以。

2.2 vue语法在uniapp中的使用

index.vue

vue的template里只能有一个盒子view。

<template>
	<view class="box">
		<h1>
			<span class="row">uniapp</span>入门
		</h1>
	</view>
</template>

<script>
	export default {
	}
</script>

<style lang="scss">
.box {
	width: 100px;
	height: 100px;
	background-color: lightpink;
	h1 {
		font-size: 40px;
		color: red;
		.row {
			font-style: italic;
		}
	}
}
</style>
  • 注意
    • 1 view可以用div替代
    • 2 style标签里加上lang="scss",类名可以嵌套a9aa694c431b4e2493a456cbbe05a307.png
    • 3 不需要遵循uniapp里的东西,标签最终会解析成uniapp自己的代码标签5751a760c15b44b4aaa8d67cf7a510d7.png
    • 4 H5和小程序相同标签的显示效果不同。因此真正要写的时候要去学习uni组件的知识。所有盒子都可以使用这样的标签包裹。这种标签就是适配小程序。因此,现在上面的代码只适合开发H5页面,不适合开发小程序。dd78944641354903b6da3a80ab069e13.png4d04a0de51394cb7a5317396bd04a473.png 

微信开发者工具,个人体会,就是微信小程序的开发工具。

2.3 pages.json文件的页面配置和全局配置

2.3.1 创建新页面

pages文件夹,右键选择“新建页面”,按下图操作。

06bf9a8191834e609ce63c15851ba76c.png

创建成功后看到pages.json文件里多了一个新页面

e593ca3a680540f0ad1b2eee449aad6e.png

2.3.2 显示新页面

将list页面挪到index上面。

d4b172df8b9a45d391c4be0c5dbfcf26.png

这样list就放在首页了。

2af371a1daaa46f7bd7709c725279f07.png

通过这个操作,实现哪个页面,就显示当前页面。

2.3.3 页面配置

新页面标题

736affc6ffa14d81b24013182e1d4796.png

其他全局文件的配置。

找到网站的全局文件一栏https://uniapp.dcloud.net.cn/collocation/pages.html

e1384f3bfeed4d2d80180628fa7fde67.png57768408ced341dcb5bbe9a0e408e558.png

以下就是页面可配置的属性,不同小程序之间有一定的差异。

5ab5b66ddc1a4053b4af2123e22ed5ab.png

例如,配置页面导航栏的背景色和文字颜色。

b664701141064b41b16daee05a428383.png

页面效果如图

8401b9015e4f4b19b6d92573db5655ee.png

2.3.4 全局配置

主要是globalStyle

  • globalStyle代表页面窗体。
  • 全局配置,包容性大,作用域小一些。
  • navigationBarTitleText 
    • 如果页面设置标题,则使用页面设置的标题navigationBarTitleText;
    • 如果没有,则页面标题使用globalStyle的navigationBarTitleText 
  • navigationBarBackgroundColor、navigationBarTextStyle、 backgroundColor同理也是如此

36fb87bf197242f3adf234fb53a3d31c.png

2.4 uniapp组件

  • 为什么要学习uniapp组件
    • 上述讲的东西做H5没有问题,因为H5页面支持html标签。
    • 但是项目还需要支持小程序、App等。所以要遵循标准规范。
    • 因为小程序页面不支持html标签,所以要按照规则进行书写。

uniapp官网的组件https://uniapp.dcloud.net.cn/component/

小程序的组件https://developers.weixin.qq.com/miniprogram/dev/component/

上述两个的组件十分相似,因为在小程序出现后,uniapp才出现。而且uniapp通过微信小程序的写法完成了其他小程序的写法。

小程序官网有的东西,uniapp里都有。uniapp有的,小程序里没有。uniapp的包容性更强,东西更多,包含了vue组件等。

如果单纯想开发微信小程序,建议去学习微信小程序的课程。

其他组件,可以去简书、掘金里去找说明。

2.4.1 view 视图容器 块级标签 div

view标签比div标签更强,是uniapp自己封装的组件。

何为组件:组件可以理解为一个小模块,将公用的功能封装起来。

使用

<template>
	<view class="out">
		<view class="box">
		</view>
	</view>
</template>

类似以前用的div。

注意1:

.out {
	.box {
		
	}
}

会自动解析为

.out .box { }

注意2:

rpx:响应式单位。

例如,以px为单位的div,

.out {
	.box {
		width: 200px;
		height: 200px;
		background-color: pink;
	}
}

在不同机型上的绝对大小是一样的

而要是想生成一个全屏。

使用响应式单位rpx页面样式与布局 | uni-app官网

750*1334,是iphone6的屏幕分辨率,只需要记750。

以px为单位的固定大小的长度是不响应的,所以建议使用rpx响应式单位。

2.4.2 icon 图标组件 行级标签

icon | uni-app官网

每个平台的图标不完全相同。

8830ff47a1ee439ca6ef3fe8440e4e07.png

例如

		<view class="box">
			<icon type="success" size="26"/>
		</view>

效果

95b480d11d104127a0ebb8ec55466993.png

2.4.3 text 文本组件 行标签 span

text替换之前的span标签。

text还有一些特别的属性,可以去官网看text组件 | uni-app官网

2.4.4 scroll-view组件 可滚动视图容器

scroll-view | uni-app官网

滑动,左右滑动。

例如,这里有5个220rpx*220rpx大小的盒子,但是边框高度限制为220rpx

b3198589e2b94457b2d1f4c1bb08b2d5.png

代码

		<scroll-view class="scroll">
			<view class="group">
				<view class="item">
					111
				</view><view class="item">
					111
				</view><view class="item">
					111
				</view><view class="item">
					111
				</view><view class="item">
					111
				</view><view class="item">
					111
				</view>
			</view>
		</scroll-view>

样式style

.scroll {
	border: 1px solid red;
	box-sizing: border-box;
	height: 220rpx;
	.group {
		.item {
			width: 220rpx;
			height: 220rpx;
			background: blue;
		}
	}
}

问题:希望能将蓝色小块做成横向滑动的效果。

p7

首先,将蓝色小块改为行级块元素。处理一下后

scroll-view的滚动属性。

添加scroll-x横向滚动属性。

效果

蓝色盒子可以滑动,底部有滚动栏。

scroll-y同理,这里不再演示。

scroll-view的其他属性可以等js学习后再尝试。

2.4.5 swiper组件 滑块视图容器

像移动端轮播图的实现,就是通过swiper实现的。

与scroll-view左右滑动不同,swiper每次就滑动一屏。

swiper-item,swiper的子元素

属性circular,即循环滑动。

此外还有自动切换时间autoplay,用interval设置切换时间。

此外还有轮播图下面的指示点,有兴趣可以自己试一下。

2.4.6 image 图片组件

image和video是最常用的媒体组件。audio(音频)和video(视频)几乎一样。camera是相机组件。

image标签的使用

		<image src="/static/logo.png" mode=""></image>

注意:1、反斜杠/代表项目主体。2、src也可以是网络图片的地址

效果

效果:绿色的图变形了。

但是html支持的img标签对应的图片不会变形。(小程序不支持html标签)

原因:image组件有一个默认的宽高,320px*240px。

解决方法:1 外加一个类,来额外控制宽高。

p8 8:15

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/312329.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

2023年全国职业院校技能大赛软件测试赛题—单元测试卷⑧

单元测试 一、任务要求 题目1&#xff1a;根据下列流程图编写程序实现相应处理&#xff0c;执行j10*x-y返回文字“j1&#xff1a;”和计算值&#xff0c;执行j(x-y)*(10⁵%7)返回文字“j2&#xff1a;”和计算值&#xff0c;执行jy*log(x10)返回文字“j3&#xff1a;”和计算值…

Qt / day04

1. 思维导图 2. 编写程序实现闹钟如下 文件 代码 clock.h #include "clock.h" #include "ui_clock.h"Clock::Clock(QWidget *parent): QWidget(parent), ui(new Ui::Clock), ptrTimerShow(new QTimer(this)), ptrTimerAlarm(new QTimer(this)), ptrSpeec…

Spark六:Spark 底层执行原理SparkContext、DAG、TaskScheduler

Spark底层执行原理 学习Spark运行流程 学习链接&#xff1a;https://mp.weixin.qq.com/s/caCk3mM5iXy0FaXCLkDwYQ 一、Spark运行流程 流程&#xff1a; SparkContext向管理器注册并向资源管理器申请运行Executor资源管理器分配Executor&#xff0c;然后资源管理器启动Execut…

iOS rootless无根越狱解决方案

据游戏工委数据统计&#xff0c;2023年国内游戏市场实际销售收入与用户规模双双创下新高&#xff0c;游戏普遍采用多端并发方式&#xff0c;成为收入增长的主因之一。 中国市场实际销售收入及增长率丨数据来源&#xff1a;游戏工委 多端互通既是机遇&#xff0c;也是挑战。从游…

使用 Docker 和 Diffusers 快速上手 Stable Video Diffusion 图生视频大模型

本篇文章聊聊&#xff0c;如何快速上手 Stable Video Diffusion (SVD) 图生视频大模型。 写在前面 月底计划在机器之心的“AI技术论坛”做关于使用开源模型 “Stable Diffusion 模型” 做有趣视频的实战分享。 因为会议分享时间有限&#xff0c;和之前一样&#xff0c;比较简…

MySQL篇—通过Clone插件进行远程克隆数据(第三篇,总共三篇)

在介绍 Clone 最终篇之前&#xff0c;我们先简要回顾一下前面所讲的内容。在第一篇中&#xff0c;我们探讨了 Clone 的用途、使用的前提条件、存在的限制&#xff0c;以及它的备份原理。Clone 是一种用于复制和备份数据的工具&#xff0c;它能够快速高效地创建数据的精确副本。…

超维空间M1无人机使用说明书——53、ROS无人机二维码识别与降落——V2升级版本

引言&#xff1a;使用二维码引导无人机实现精准降落&#xff0c;首先需要实现对二维码的识别和定位&#xff0c;可以参考博客的二维码识别和定位内容。本小节主要是通过获取拿到的二维码位置&#xff0c;控制无人机全向的移动和降落&#xff0c;本小节再V1版本的基础上增加了动…

【AI视野·今日NLP 自然语言处理论文速览 第七十二期】Mon, 8 Jan 2024

AI视野今日CS.NLP 自然语言处理论文速览 Mon, 8 Jan 2024 Totally 17 papers &#x1f449;上期速览✈更多精彩请移步主页 Daily Computation and Language Papers DeepSeek LLM: Scaling Open-Source Language Models with Longtermism Authors DeepSeek AI Xiao Bi, Deli Ch…

【修图】AI修图工具

人脸替换 免费的人脸替换工具&#xff1a; Face Swap&#xff1a; https://vmodel.ai/face-swap 支持单人换脸、多人换脸 AI消除 SnapEdit https://snapedit.app/remove-object 不付费的话只能下载清晰度较低的版本 但我试了几个在线的AI消除工具&#xff0c;SnapEdit算是…

最新版docker-compose安装

Ubuntu/Kali 下载安装最新版 docker-compose # FastGit加速 sudo curl -L "https://hub.fgit.cf/docker/compose/releases/download$(curl -L -i -s -o /dev/null -w "%{url_effective}\n" https://hub.fgit.cf/docker/compose/releases/latest | awk -F tag …

docker-compose部署kafka、SASL模式(密码校验模式)

一.基础kafka部署 zookeeper&#xff0c;kafka&#xff0c;kafka-ui docker-compose.yml 注意点&#xff1a;192.168.1.20 是宿主机的ip version: "3" services:zookeeper:image: wurstmeister/zookeepercontainer_name: zookeeperrestart: alwaysports:- 2181:2…

【python】python新年烟花代码【附源码】

欢迎来到英杰社区https://bbs.csdn.net/topics/617804998 新年的钟声即将敲响&#xff0c;为了庆祝这个喜庆的时刻&#xff0c;我们可以用 Python 编写一个炫彩夺目的烟花盛典。本文将详细介绍如何使用 Pygame 库创建一个令人惊叹的烟花效果。 一、效果图&#xff1a; 二…

质量好洗地机有哪些?洗地机口碑榜

在很多人眼中&#xff0c;洗地机可能被简单地视为一种高价的拖把&#xff0c;但作为一个经验丰富的洗地机测评博主&#xff0c;我要强调洗地机在家务工作中的巨大价值。它不仅仅是一种清洁工具&#xff0c;更是集扫地、拖地、洗地以及擦干地板等多项功能于一身的强大设备。通过…

【python 的各种模块】(9) 在python使用PIL,即pillow模块

目录 1 导入PIL模块&#xff08;pillow&#xff09; 1.1 导入PIL模块 1.1.1 可用的导入形式 1.1.2 常用的导入形式 1.1.3 PIL下面的常用子模块 2 用 PIL读入&#xff0c;生成和显示图片 2.1 用 PIL.Image.open() 可以读入图片 2.2 用PIL.Image.new() 生成新图片 2.3 …

详解矩阵的正交化(附例题分析)

目录 一. 矩阵Gram-Schmidt正交化的好处 二. 矩阵标准正交化过程 三. 例题 3.1 标准正交化 3.2 算法小结 3.3 优化分析 四. 小结 矩阵有两类等价关系 矩阵对角化 特殊矩阵 一. 矩阵Gram-Schmidt正交化的好处 假如有三个线性独立的向量a,b,c&#xff0c;他们是标准正…

antv/x6_2.0学习使用(五、路由)

X6 默认提供了以下几种路由: 路由名称说明normal默认路由&#xff0c;原样返回路径点orth正交路由&#xff0c;由水平或垂直的正交线段组成oneSide受限正交路由&#xff0c;由受限的三段水平或垂直的正交线段组成manhattan智能正交路由&#xff0c;由水平或垂直的正交线段组成…

【Linux】Linux 系统编程——tree 命令

文章目录 1. 命令概述2. 命令格式3. 常用选项4. 相关描述4.1 tree 命令安装 5. 参考示例5.1 创建树形目录5.2 使用 tree 命令查看树形目录 1. 命令概述 tree 命令用于在命令行界面以树状图形式显示目录及其子目录的内容。这个命令递归地列出所有子目录&#xff0c;并可选择显示…

uⅤ打印-小理光上海RYPC后台运动系统

uⅤ打印-小理光上海RYPC后台运动系统

应用在游戏机触摸屏中的触摸感应芯片

触屏游戏机的屏幕是由液晶屏和触控层组成的。触控层分为电容式触屏和电阻式触屏两种。电容式触屏是将悬空电极和屏幕玻璃上的电极组成静电场,当人体接近屏幕时,就会改变静电场分布,从而实现触摸的位置探测。而电阻式触屏则是利用玻璃上的两层电极之间通电形成一个电阻值,当手指…

四款AI写作助手推荐:提高内容创作效率与质量

随着人工智能技术的飞速发展&#xff0c;AI写作助手逐渐成为内容创作者的新宠。这些工具利用先进的人工智能技术&#xff0c;为写作者提供强大的支持&#xff0c;帮助他们提高创作效率和质量。本文将介绍四种受欢迎的AI写作助手&#xff1a;海鲸AI、Jenni AI、Writesonic和Jasp…