微信小程序学习笔记(4)

文章目录

  • 1、< template >< / template >
  • 2、样式导入
    • i、wxml
    • ii、wxss
  • 3、flex布局
    • i、容器属性
    • ii、项目属性

1、< template >< / template >

模板可以重复调用

首先要定义一个模板:

<template name="test">
    <view>{{username}}</view>
    <view>{{password}}</view>
</template>
<!-- 这里定义了一个模板名字为 test 的模板 ,里面包含了两个 view 组件-->

然后才能应用该模板:

<template is="test" data="{{username:'admin',password:'123'}}">
</template>
<!-- 使用 is 引用所要使用的模板名字,同时,使用 data 更新模板中的变量的值 -->
<!-- 另外,也可以在 Page() 中定义 data 的其中一个变量值,以一个结构体的值为例子:

Page({
    data: {
        stu:{
            username:'admin',
            password:'123'
        }
    }
})

然后,在引用该模板的时候可以使用

<template is="test" data="{{...stu}}">
</template>

来给变量赋值

其中 “...stu” 表示将 名字为 stu 的变量展开引用

-->

2、样式导入

i、wxml

提供了 import 和 include 两种引用方式

<import src="相对路径" />
<include src="相对路径" />

import 有作用域的概念,比如,在一个 wxml(记为 A) 文件中引用了另一个 wxml(记为B),同时,在 B 中引用了其他的 wxml (记为C)文件,那么,在 A 中,只能引用 B 中的 内容,而不会引用 C 中,使用 import 导入的内容

避免了多个页面相互引用,陷入逻辑错误

include 只会引入 除了 template style script 及其内容,相当于吧代码 copy 过来

  • <import>:适用于导入通用的模板、组件等,提高代码的复用性和可维护性。
  • <include>:适用于将某个文件中的特定部分插入到当前页面中,通常用于模块化开发。

ii、wxss

尺寸单位:rpx根据指定的屏幕自适应

样式导入:

@import "相对路径";

3、flex布局

在flex布局中,用于包含内容的组件成为容器,容器内部的组件成为项目,容器允许包含嵌套

坐标轴是以容器的左上角为原点,自左向右,自上向下

也可以通过flex-direction:column将主轴改变为:自上向下,自左向右

i、容器属性

flex-direction:

flex-direction: row(默认) | row-reverse | column | column-reverse
/*
row 坐标轴是以容器的左上角为原点,自左向右,自上向下
row-reverse  坐标轴是以容器的左上角为原点,自右向左,自上向下
column 自上向下,自左向右
column-reverse 自下向上,自左向右

flex-wrap:

flex-wrap: nowrap(默认) | wrap | wrap-reverse
/*

nowrap 不换行,如果单行内容过多,项目宽度会被压缩
wrap 当容器单行容不下所有项目时,允许换行
wrap-reverse 与 wrap 相同,只不过,换行方向为 wrap 的反方向

在这里插入图片描述

justify-content:

justify-content: flex-start | flex-end | center | space-between | space-around | space-evenly ;
  • flex-start(默认值):左对齐,没有空隙
  • flex-end:右对齐,没有空隙
  • center: 居中,没有空隙
  • space-between:两端对齐,项目之间的间隔都相等。
  • space-around:项目之间的间隔比 开始和末尾 与边框的间隔大一倍,开始 和末尾与边框相同
  • space-evenly: 开始和末尾,与项目之间的间隔相同

还有 align-items(项目在行中的对齐方式)

align-content(项目在非主轴的对齐方式)

ii、项目属性

order:

.item{
    order: 0(默认);/* 一个整数,表示排列的位置,数值越小越靠前  */
}

flex-shrink:(收缩因子)

.item{
    flex-shrink: 1(默认);/* 一个非负数 ,也称为 收缩因子*/
}

如果所有项目的flex-shrink属性都为1,当空间不足时,都将等比例缩小。如果一个项目的flex-shrink属性为0,其他项目都为1,则空间不足时,前者不缩小

计算公式:最终长度= 原长 x (1 - 溢出长度 x 收缩因子 / 压缩权重 )向下取整

上述公式只适用于 所有收缩因子的总和大于 1 的情况

压缩权重 = 长度1 x 收缩因子1 + 长度2 x 收缩因子2 + …

长度指的是主轴上的长度

flex-grow:定义项目的放大比例,默认为0,即如果存在剩余空间,也不放大

.item {
  flex-grow: 0; /* 非负数 */
}

最终长度 = 原长度 + 扩张单位 x 扩张因子 (向下取整)

扩张单位 = 剩余空间 / 扩张因子的总和

长度指的是主轴上的长度

flex-basis:根据主轴的方向代替,主轴上的宽或者高

默认 auto(其优先级比数值低)如果,不是 auto 而是数字,则优先级大于 项目的宽或者高

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

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

相关文章

Python GUI编程:深入探索现代GUI库及其创新应用

目录 引言 Python GUI库概览 1. Tkinter 2. PyQt/PySide 3. wxPython 4. Kivy 5. PyGTK 6.FLTK (pyFLTK) 创新应用案例 1. 交互式数据分析工具 2. 智能物联网(IoT)仪表板 3. 增强现实(AR)辅助设计软件 4. 跨平台的科学计算软件 5. 交互式教育软件 实战示例1&…

Springboot整合SpringCache+redis简化缓存开发

使用步骤&#xff1a; 1.引入依赖 <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-cache</artifactId> </dependency><dependency><groupId>org.springframework.boot</groupI…

MySQL—多表查询—标量子查询

一、引言 上篇学习完子查询的概念和分类。 现在来学习第一种子查询——标量子查询。 &#xff08;1&#xff09;标量子查询的基本概念 子查询返回的结果是单个值&#xff0c;也就是一行一列&#xff08;可以是数字、字符串、日期等&#xff09; 是一种最简单的子查询形式&am…

【机器人和人工智能——自主巡航赛项】进阶篇

文章目录 案例要求创建地图rviz仿真 保存地图坐标点定位识别训练主逻辑理解语音播报模块匹配二维码识别多点导航讲解视频其余篇章 案例要求 创建地图 ./1-gmapping.sh 把多个launch文件融合在sh文件里面 rviz仿真 rviz是rose集成的可视化界面&#xff0c;查看机器人的各项数…

iOS--block再学习

block再学习 什么是blockblock是带有自动变量的匿名函数block语法 block的实现block的实质截获自动变量__blcok说明符Block存储域__block变量存储域使用__block变量用结构体成员变量__forwarding的原因 截获对象 什么是block Block时c语言的扩充功能&#xff0c;它允许开发者定…

宝塔面板和 LNMP 环境下反代 HFish 蜜罐平台的正确方法

最近明月在热心站长好友的支持下搭建了安全、简单、有效并永久免费的蜜罐平台 HFish,因为 HFish 默认是以 https://IP:端口 的 Web 链接形式提供访问的,这会暴露蜜罐平台的真实服务器 IP 不说,还非常不便于快速的访问(反正明月是记不住 IP 的),所以就需要给部署好的 HFis…

Python爬取与可视化-豆瓣电影数据

引言 在数据科学的学习过程中&#xff0c;数据获取与数据可视化是两项重要的技能。本文将展示如何通过Python爬取豆瓣电影Top250的电影数据&#xff0c;并将这些数据存储到数据库中&#xff0c;随后进行数据分析和可视化展示。这个项目涵盖了从数据抓取、存储到数据可视化的整个…

《精通ChatGPT:从入门到大师的Prompt指南》第4章:避免常见错误

第4章&#xff1a;避免常见错误 在使用ChatGPT进行Prompt编写时&#xff0c;常见的错误可能会大大影响生成内容的质量和准确性。本章将详细讨论这些错误&#xff0c;并提供如何避免它们的建议。 4.1 不明确的指令 在使用ChatGPT时&#xff0c;一个常见的问题是指令不够明确。…

中电联系列二:rocket手把手教你理解中电联协议!

分享《一套免费开源充电桩物联网系统&#xff0c;是可以立马拿去商用的&#xff01;》 前 言 T/CEC102《电动汽车充换电服务信息交换》分为四个部分&#xff1a; ——第1部分&#xff1a;总则&#xff1b; ——第2部分&#xff1a;公共信息交换规范&#xff1b; ——第3部分&a…

微信机器人实现OCR识别录入数据

介绍 采用微信的hook插件&#xff0c;然后解析微信发来的数据图片&#xff0c;通过ocr识别 然后将数据落入execl表格中。同时有权限的人可以导出数据表格即可。 流程图 代码片 文本消息处理流程_robot.py elif msg.type 0x01: # 文本消息# 管理员列表dba_user_list [wxid_…

MathType7.8永久破解版下载 让数学学习变得简单有趣!

大家好&#xff0c;我是科技评论家。今天给大家推荐一款非常实用的数学公式编辑器——MathType 7.8&#xff01;&#x1f4f1;&#x1f4b0; 在数字化时代&#xff0c;学术研究、教学和科研领域中的数学公式编辑需求越来越高。而MathType 7.8作为一个广受欢迎的数学公式编辑器&…

Spring Boot整合Redis通过Zset数据类型+定时任务实现延迟队列

&#x1f604; 19年之后由于某些原因断更了三年&#xff0c;23年重新扬帆起航&#xff0c;推出更多优质博文&#xff0c;希望大家多多支持&#xff5e; &#x1f337; 古之立大事者&#xff0c;不惟有超世之才&#xff0c;亦必有坚忍不拔之志 &#x1f390; 个人CSND主页——Mi…

DALL·E2最详细解读篇章

CLIP被证明其可以学习到鲁棒的图像特征&#xff0c;可以有效的捕获图像的语义和风格&#xff0c;且具有很强的zero-shot能力。另外&#xff0c;Diffusion是目前最优的生成式框架&#xff0c;其推动了图像、视频生成任务的最先进性能。Classifier-Free Diffusion指导技术以样本多…

Junit 单元测试 详解,包你掌握

Java单元测试----Junit详解 1 什么是 Junit JUnit 是一个广泛使用的 Java 单元测试框架。它用于编写和运行可重复的测试&#xff0c;以验证 Java 程序的行为是否符合预期 也许有人会好奇&#xff0c;之前学的 Selenium 和 Junit 有什么关系&#xff1f;答案就是没关系&#…

递归【2】(组合回溯(生成括号)、子集回溯(背包问题))

括号对 &#xff08;组合型回溯&#xff09; 分解成子问题&#xff0c;每一次添加括号分两步&#xff1a; if左括号小于n&#xff0c;加左括号&#xff0c;然后k(index1), if左括号大于有括号&#xff0c;加右括号&#xff0c;k(index1),然后收尾括号单独考虑&#xff0c;到…

设计模式之过滤器模式FilterPattern(十)

一、过滤器模式 过滤器模式&#xff08;Filter Pattern&#xff09;或标准模式&#xff08;Criteria Pattern&#xff09;是一种设计模式&#xff0c;这种模式允许开发人员使用不同的标准来过滤一组对象&#xff0c;通过逻辑运算以解耦的方式把它们连接起来。这种类型的设计模…

linux centos redis-6.2.6一键安装及配置密码

linux centos redis-6.2.6一键安装及配置密码 redis基本原理一、操作阶段&#xff0c;开始安装 redis基本原理 redis作为非关系型nosql数据库&#xff0c;一般公司会作为缓存层&#xff0c;存储唯一会话id&#xff0c;以及请求削峰作用 一、数据结构 Redis支持多种数据结构&a…

拯救者Legion Y9000X IRX9 2024(83FD)原装出厂Windows11系统镜像下载

lenovo联想2024款拯救者Y9000X IRX9 笔记本电脑【83FD】OEM预装Win11系统安装包&#xff0c;恢复开箱状态&#xff0c;自带恢复重置还原功能 链接&#xff1a;https://pan.baidu.com/s/1i_sVcnXF4qgsuj02rebe-Q?pwdyefp 提取码&#xff1a;yefp 联想原装WIN11系统自带所有…

Sentinel不使用控制台基于注解限流,热点参数限流

目录 一、maven依赖 二、控制台 三、基于注解限流 四、热点参数限流 五、使用JMeter验证 一、maven依赖 需要注意&#xff0c;使用的版本需要和你的SpringBoot版本匹配&#xff01;&#xff01; Spring-Cloud直接添加如下依赖即可&#xff0c;baba已经帮你指定好版本了。…

Android限制参数传递之StringDef注解的使用

文章目录 1. 引言2. 注解 StringDef2.1 举例2.2 StringDef源码解释 3. 其他类似注解 IntDef、LongDef4. 总结 1. 引言 在参数传递时&#xff0c;如果你想限制传入的参数只能是特定的几个值&#xff0c;该怎么做呢&#xff1f; 除了把参数类型定义为枚举值&#xff0c;还可以使…