微信小程序的了解和使用

微信小程序

微信小程序的项目组成

在这里插入图片描述

pages 文件夹 用于存放所有的小程序页面

logs 文件夹 用于存放所有的日志文件

utils 文件夹 用于存放工具性质的模块 js

app.js 小程序的入口文件

app.json 小程序的全局配置文件

app.wxss 全局样式文件

project.config.json 项目配置文件

project.private.config 项目的私有配置文件

sitemap.json 用于配置小程序及页面是否允许被微信所索引

在这里插入图片描述

window 当前窗口的配置

pages 所有页面 第一位的是首页

请求

出于安全的考虑 小程序要求对数据的接口请求限制:

1.只能请求HTTPS类型的接口

2.必须将接口的域名添加到信任列表中

本地请求测试

在这里插入图片描述

wx.request({

url string 是 开发者服务器接口地址

data string/object/ArrayBuffer 否 请求的参数

header Object 否 设置请求的 header,header 中不能设置 Referer。

content-type 默认为 application/json

method string GET 否 HTTP 请求方法

success function 否 接口调用成功的回调函数

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

complete function 否 接口调用结束的回调函数(调用成功、失败都会执行

})

跨域

跨域是指基于浏览器Web开发中,由于小程序的宿主环境 是微信客户端

不是浏览器,所以小程序不存在跨域问题

上拉刷新 下拉触底

在这里插入图片描述

在这里插入图片描述

wxs (WeiXin Script)是小程序独有的一套脚本语言 结合WXML 可以构建页面结构

wxml中无法调用页面的js定义的函数 但是wxml中可以调用到wxs中定义的函数。

所以小程序中的wxs应用的场景就是过滤器

wxs JavaScript的关系

两种完全不同的语言

1.wxs有自己的类型

​ number 数值类型 string 字符串类型 boolean 布尔类型 object 对象类型

function 函数类型 array数组类型 date事件类型 regexp正则类型

2.wxs 不支持 es6 以及以上的语法形式

​ 不支持 let const 解构解析 展开运算 箭头函数 对象属性简写…

支持 var 定义变量 普通的function函数 ES5

内嵌wxs脚本

wxs代码可以在wxml中定义wxs标签,编写业务逻辑

wxml文件中每个< wxs>< /wxs> 标签 必须提供 module 属性 指定模块名称

在这里插入图片描述

定义外联的wxs脚本

可以创建.wxs为后缀名的文件,类似js文件一样 定义wxs文件

在这里插入图片描述

在这里插入图片描述

性能好 在IOS设备上 小程序中的wxs会比JavaScript代码块2- 20倍

组件和页面的区别

从表面看 组件和 页面都是由js json wxml wxss租场

但是组件和页面的js 与 JSON 是明显不同的

组件json文件中需要声明"component": true, 属性

组件js文件中调用的是Component({})函数

组件的事件需要定义在 methods中

引用组件

全局引用

在这里插入图片描述

局部引用

在这里插入图片描述

在这里插入图片描述

组件的样式隔离

​ app.wxss 中的全局样式 对组件无效的

只有class选择器会有样式的隔离效果 id选择器 属性选择器 标签选择器 不受样式隔离限制

“styleIsolation”: “isolated” 样式隔离

  • isolated 表示启用样式隔离,在自定义组件内外,使用 class 指定的样式将不会相互影响(一般情况下的默认值);
  • apply-shared 表示页面 wxss 样式将影响到自定义组件,但自定义组件 wxss 中指定的样式不会影响页面;
  • shared 表示页面 wxss 样式将影响到自定义组件,自定义组件 wxss 中指定的样式也会影响页面和其他设置了 apply-sharedshared 的自定义组件。(这个选项在插件中不可用。)

在这里插入图片描述

type:类型 value:默认值

在这里插入图片描述

properties 与 data 的区别

在小程序 properties 和 data 的数据用法相同 都是可以读写的 但是

data更倾向于私有数据

properties 更倾向于存储对外接收到的数据

本质上没有区别

组件数据监听器

数据的监听 用于监听和响应任何的属性和数据字段的变化 ,从而执行特定的操作。

纯数据字段

不需要渲染到页面的data字段

纯数据字段 有助于提升页面的更新性能

在这里插入图片描述

在这里插入图片描述

组件生命周期函数

生命周期参数描述最低版本
created在组件实例刚刚被创建时执行1.6.3
attached在组件实例进入页面节点树时执行1.6.3
ready在组件在视图层布局完成后执行1.6.3
moved在组件实例被移动到节点树另一个位置时执行1.6.3
detached在组件实例被从页面节点树移除时执行1.6.3
errorObject Error每当组件方法抛出错误时执行

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

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

Docker 有哪些常用的命令和操作?

Docker是一个开源的应用容器引擎&#xff0c;让开发者可以打包他们的应用以及依赖包到一个可移植的容器中&#xff0c;然后发布到任何流行的Linux机器或Windows机器上&#xff0c;也可以实现虚拟化。以下是Docker的一些常用命令和操作&#xff1a; 安装和启动Docker 要使用Do…

EMC学习笔记(二十四)降低EMI的PCB设计指南(四)

降低EMI的PCB设计指南&#xff08;四&#xff09; 1.电路板分区2.信号走线2.1 电容和电感串扰2.2 天线2.3 端接和传输线2.4输入端的阻抗匹配 tips&#xff1a;资料主要来自网络&#xff0c;仅供学习使用。 1.电路板分区 电路板分区与电路板平面规划具有相同的基本含义&#x…

RabbitMQ的延迟队列实现[死信队列](笔记一)

关于死信队列的使用场景不再强调&#xff0c;只针对服务端配置 注意&#xff1a; 本文只针对实现死信队列的rabbitMQ基本配置步骤进行阐述和实现 目录 1、docker-compose 安装rabbitMq2、查看对应的版本及插件下载3、安装插件和检测 1、docker-compose 安装rabbitMq a、使用d…

flask+python高校学生综合测评管理系统 phl8b

系统包括管理员、教师和学生三个角色&#xff1b; 。通过研究&#xff0c;以MySQL为后端数据库&#xff0c;以python为前端技术&#xff0c;以pycharm为开发平台&#xff0c;采用vue架构&#xff0c;建立一个提供个人中心、学生管理、教师管理、课程类型管理、课程信息管理、学…

《统计学简易速速上手小册》第6章:多变量数据分析(2024 最新版)

文章目录 6.1 主成分分析&#xff08;PCA&#xff09;6.1.1 基础知识6.1.2 主要案例&#xff1a;客户细分6.1.3 拓展案例 1&#xff1a;面部识别6.1.4 拓展案例 2&#xff1a;基因数据分析 6.2 聚类分析6.2.1 基础知识6.2.2 主要案例&#xff1a;市场细分6.2.3 拓展案例 1&…

【leetcode】965. 单值二叉树

题目链接 965. 单值二叉树 bool isUnivalTree(struct TreeNode* root) {// if (root->left ! NULL && root->right ! NULL) {// return root->val root->left->val// && root->val root->right->val// && isUnivalTr…

python+django人力资源管理系统7w5x3

技术栈 后端&#xff1a;python 前端&#xff1a;vue.jselementui 框架&#xff1a;django Python版本&#xff1a;python3.7 数据库&#xff1a;mysql5.7 数据库工具&#xff1a;Navicat 开发软件&#xff1a;PyCharm .设计框架&#xff1a;Vue 1. 表现层&#xff1a;写多…

深入学习Pandas:数据连接、合并、加入、添加、重构函数的全面指南【第72篇—python:数据连接】

深入学习Pandas&#xff1a;数据连接、合并、加入、添加、重构函数的全面指南 Pandas是Python中最强大且广泛使用的数据处理库之一&#xff0c;提供了丰富的函数和工具&#xff0c;以便更轻松地处理和分析数据。在本文中&#xff0c;我们将深入探讨Pandas中一系列数据连接、合…

离线数仓(一)【数仓概念、需求架构】

前言 今天开始学习数仓的内容&#xff0c;之前花费一年半的时间已经学完了 Hadoop、Hive、Zookeeper、Spark、HBase、Flume、Sqoop、Kafka、Flink 等基础组件。把学过的内容用到实践这是最重要的&#xff0c;相信会有很大的收获。 1、数据仓库概念 1.1、概念 数据仓库&#x…

如何避免陷入穷忙的陷阱

哈喽&#xff0c;你好啊&#xff0c;我是雷工&#xff01; 在2006年小日子过得不错的日本出了一部纪录片《穷忙族》&#xff0c; 记录了一些收入不多却整日奔波劳碌&#xff0c;虽然努力工作&#xff0c;却依然无法摆脱贫穷的一群人。 他们越忙越穷&#xff0c;越穷越忙&#…

C语言之预处理详解

目录 1. 预定义符号2. #define定义常量3. #define定义宏练习 4. 带有副作用的宏参数5. 宏替换的规则6. 宏函数的对比宏和函数的一个对比 7. #和###运算符##运算符 8. 命名约定9. #undef10. 命令行定义11. 条件编译常见的条件编译 12. 头文件的包含头文件的包含方式库文件包含嵌…

3d渲染100农场如何使用?渲染100邀请码1a12

3d渲染农场通常用于电影、动画或视觉效果的渲染&#xff0c;本文以广受好评的渲染100农场为例&#xff0c;来讲解它的使用方法。 1、注册账号 前往渲染100官网(http://www.xuanran100.com/?ycode1a12)注册账号&#xff0c; 新用户注册记得填邀请码1a12&#xff0c;有30元大礼…

Netty应用(五) 之 Netty引入 EventLoop

目录 第三章 Netty 1.什么是Netty&#xff1f; 2.为什么需要使用Netty&#xff1f; 3.Netty的发展历程 4.谁在使用Netty&#xff1f; 5.为什么上述这些分布式产品都使用Netty&#xff1f; 6.第一个Netty应用 7.如何理解Netty是NIO的封装 8.logback日志使用的加强 9.Ev…

腾讯2023年终奖揭秘:最高30个月!

腾讯2023年终奖揭秘&#xff1a;最高30个月&#xff01; 关于腾讯公司2023年度年终奖的消息引起了广泛的关注。据报道&#xff0c;腾讯今年的年终奖金额可达到员工月薪的5个月&#xff0c;这无疑是许多互联网从业者梦寐以求的福利待遇。作为中国互联网行业的巨头之一&#xff…

Leecode之反转链表

一.题目及剖析 https://leetcode.cn/problems/reverse-linked-list/description/ 二.思路引入 设定三个指针,n1指向空, n2指向head,n3指向下一个元素,将n2->next指向n1,然后三个指针向后遍历重复即可 三.代码引入 /*** Definition for singly-linked list.* struct List…

【JavaEE】----SpringBoot的创建和使用

目录 1.Spring与SpringBoot的区别&#xff08;面试&#xff09; 2. SpringBoot的创建 3.SpringBoot创建时的问题及解决 4.SpringBoot的目录学习 5.创建一个SpringBoot 项目并且启动 1.Spring与SpringBoot的区别&#xff08;面试&#xff09; Spring 的诞⽣是为了简化 Java 程…

2024给你一些Android 应用性能优化的建议

2024给你一些Android 应用性能优化的建议 在当今激烈竞争的移动应用市场中&#xff0c;用户对应用性能和体验的要求越来越高。因此&#xff0c;进行 Android 应用性能优化是开发过程中必不可少的一环。下面将详细介绍如何提升应用的性能&#xff0c;以提升用户体验。 1. 优化…

罗德里格斯公式简要介绍

一、罗德里格斯公式&#xff08;Rodrigues’ rotation formula&#xff09;是一个用于计算绕任意轴旋转向量的数学公式。它是由欧仁罗德里格斯&#xff08;Olinde Rodrigues&#xff09;在1840年提出的。这个公式在三维空间中描述了一个向量绕着单位向量旋转θ角度后的结果。 …

【Linux】学习-文件的软硬链接

文件的软硬链接 在上一篇拓展篇—文件系统中我们介绍过文件元的概念&#xff1a; 我们在使用ls -l命令查看文件元信息的时候&#xff0c;有一个硬链接数&#xff0c;说明文件的硬链接数属于文件的属性之一&#xff0c;那么硬链接究竟是什么呢&#xff1f;软链接又是什么呢&…

【闲谈】开源软件的崛起与影响

随着信息技术的快速发展&#xff0c;开源软件已经成为软件开发的趋势&#xff0c;并产生了深远的影响。开源软件的低成本、可协作性和透明度等特点&#xff0c;使得越来越多的企业和个人选择使用开源软件&#xff0c;促进了软件行业的繁荣。然而&#xff0c;在使用开源软件的过…