【1 微信小程序学习-核心思想与体验】

news2025/4/6 8:51:55

1 小程序的核心技术

在这里插入图片描述

.js文件,负责数据处理,函数定义和实现
.wxml文件,组件结构与数据绑定
.wxss文件,组件样式
.json配置信息补充

MVVM架构实现声明式编程

采用MVVM架构,核心是通过数据绑定实现响应式编程(声明式编程).
M:数据处理
V:样式结构
VM:数据绑定和事件监听

vue和小程序Mina框架实际做的的是viewModel部分

在这里插入图片描述

和Vue的对应关系

在这里插入图片描述

2 注册账号 – 申请AppID

接入流程:https://mp.weixin.qq.com/cgi-bin/wx

3 下载小程序开发工具

微信开发者工具下载地址:
 https://developers.weixin.qq.com/miniprogram/dev/devtools/download.html

4 使用VSCode开发

在这里插入图片描述

5 小程序项目结构

在这里插入图片描述

6 开发体验

1 app.json文件

page字段,所有用到的页面都必须在这个字段进行注册.默认加载pages的第一个页面
在这里插入图片描述

2 新建页面

先建立文件夹,右键新建page,会生成四个文件,并且自动注册page,(json文件编写配置)
在这里插入图片描述
也可以自动创建页面,在page中注册不存在的页面,会自动创建对应页面

3 很多东西都可以直接通过json配置文件来完成,不用写代码

在这里插入图片描述

代码示例

.js文件,负责数据处理,函数定义和实现

// pages/favor/favor.js
// 实例化: 页面实例
//this代表页面实例
Page({
  data: {
    // 1.案例一: 数据绑定 mustache语法
    message: "Hello World",

    // 2.案例二: 列表数据
    movies: ["少年派", "大话西游", "星际穿越", "独行月球"],

    // 3.案例三: 计数器
    counter: 0
  },

  // 监听的事件方法,计数加减的函数
  increment() {
    console.log("+1");
    // 修改data中的数据, 但是你的修改并不会引起页面的刷新(自动检测你的新数据重新渲染页面, 在小程序中不会, 在react中也不会,vue会)
    // this.data.counter += 1
    // console.log(this.data.counter);

    // 修改data, 并且希望页面重新渲染, 这里必须使用this.setData()
    this.setData({
      counter: this.data.counter + 1
    })
  },
  decrement() {
    console.log("-1");
    this.setData({
      counter: this.data.counter - 1
    })
  }
})

.wxml文件,组件结构与数据绑定

<!--pages/favor/favor.wxml-->
<!-- 1.显示普通的文本 -->
<text class="title">我是普通的文本</text>

<!-- 2.动态绑定message属性,动态绑定的数据都要使用 -->
<view class="message">{{ message }}</view>

<!-- 3.动态展示列表数据 -->
<view class="movies">
  <!-- for循环: block类似temtemplatea ,会默认创建item,和index,*this代表item自身作为key-->
  <block wx:for="{{movies}}" wx:key="*this">
    <view>
      {{ item }}-{{ index }}
    </view>
  </block>
</view>


<!-- 4.事件绑定: 计数器案例 bindtap点击事件绑定 -->
<view class="counter">
  <view class="count">当前计数: {{ counter }}</view>
  <button size="mini" type="primary" bindtap="increment">+1</button>
  <button size="mini" type="warn" bindtap="decrement">-1</button>
</view>

.wxss文件,组件样式

/* pages/favor/favor.wxss */
.title {
  font-size: 20px;
  color: red;
}

.message {
  font-size: 30px;
  font-weight: 700;
  color: green;
}

.counter {
  text-align: center;
}

.count {
  margin-top: 30px;
  font-size: 20px;
  font-weight: 700;
  color: orange;
}

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

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

相关文章

程序员的职场危机,能靠技术化解吗?

很多人认为&#xff0c;程序员一定要干到管理层&#xff0c;才会有继续走下去的希望&#xff0c;而踏实做技术的程序员&#xff0c;只会面临淘汰。 事实真是如此吗&#xff1f; △ 截图来源脉脉&#xff0c;如侵删 我们先不说结论&#xff0c;一起看看网友们的看法&#xff1…

Linux | Job control

Linux | Job control 文章目录 Linux | Job control命令直接将命令丢到后台中“执行”的 &将当前工作丢到后台“暂停”&#xff1a;Ctrl z查看后台工作状态&#xff1a;jobs将后台工作拿到前台处理&#xff1a;fg让工作在后台下的状态变成运行中&#xff1a;bg管理后台工作…

Qt6之vc调用qt生成的带ui的dll

受益于跨平台的特性&#xff0c;Qt生成dll的各种语言调用上体现的淋漓尽致&#xff0c;上篇已经演示了qt生成的无ui的dll及vc如何调用它&#xff0c;本篇将演示vc如何调用qt生成的带ui的dll。 传统观点认为Qt生成的带ui的dll受限于 QApplication 的 exec 方法&#xff0c;这样才…

《精通特征工程》学习笔记(6):非线性特征化与k-均值模型堆叠

1.非线性特征 当数据位于一个薄饼状的线性子空间时&#xff0c;PCA 是非常有用的。但如果数据形成了一个更加复杂的形状&#xff0c;情况又将如何呢&#xff1f; 如果线性子空间是一张平展的纸&#xff0c;那么非线性流形的一个简单例子就是卷起来的纸&#xff0c;它有 个非…

《人人健康》期刊简介及投稿邮箱

《人人健康》期刊简介及投稿邮箱 《人人健康》期刊简介&#xff1a; 主管单位&#xff1a;山西出版传媒集团有限责任公司 主办单位&#xff1a;山西三晋报刊传媒集团有限责任公司 国际刊号ISSN&#xff1a;1004-597X 国内刊号CN&#xff1a;14-1033/R 邮发代号&#xff1…

不甘做小弟,JS时间对象又在搞事情!(上)

关注“大前端私房菜”微信公众号&#xff0c;回复暗号【面试宝典】即可免费领取107页前端面试题。 Date Date 是 js 的一个内置对象&#xff0c;也叫内置构造函数。提供了一堆的方法帮助我们更方便的操作时间 创建时间对象&#xff1a;new Date() 获取时间对象&#xff1a;ne…

NTSC和PAL视频格式的区别

1&#xff0c;历史演变 NTSC早期描述的是525I59.94格式视频&#xff0c;1953年确立标准&#xff0c;美国主导。后来为了方便和PAL制式格式的视频转换&#xff0c;于是将60hz的倍数关系的帧率纳入该系统。 PAL描述的是625I50格式视频&#xff0c;1967年确立标准&#xff0c;欧洲…

完全免费白嫖 GPT-4 的终极方案!

原文链接&#xff1a;https://icloudnative.io/posts/completely-free-to-use-gpt4/ GPT-4 目前是世界上最强的多模态大模型&#xff0c;能力甩 GPT-3.5 好几条街。 大家都希望早日用上 GPT-4&#xff0c;不过目前体验 GPT-4 的渠道非常有限&#xff0c;要么就是开通 ChatGPT …

Java编程笔记31:Record

Java编程笔记31&#xff1a;Record 图源&#xff1a;Fotor懒设计 在日常使用的时候&#xff0c;我们往往需要创建一些“仅用于传输数据的类型”&#xff0c;比如Web编程时候的DTO。 将特殊用途的类型限制为“只读”的一个好处是&#xff0c;这些类型可以安全地在多线程之间共享…

uniapp开发小程序-显示左滑删除效果

一、效果图&#xff1a; 二、代码实现&#xff1a; <template><view class"container"><view class"myorderList"><uni-swipe-action><uni-swipe-action-item class"swipe-action-item" :right-options"option…

【严重】Nacos 集群Raft反序列化漏洞

漏洞描述 Nacos是一个用于动态服务发现和配置以及服务管理的平台。 攻击者可以在Nacos集群处理某些Jraft请求时利用Hessian进行无限制的反序列化&#xff0c;从而造成远程代码执行。 由于Nacos默认监听7848端口处理Raft协议请求&#xff0c;攻击者可能通过向7848端口发送恶意…

[笔记]C++并发编程实战 《四》同步并发操作

文章目录 前言第4章 同步并发操作4.1 等待一个事件或其他条件4.1.1 等待条件达成4.1.2 使用条件变量构建线程安全队列 4.2 使用期望值等待一次性事件4.2.1 后台任务的返回值4.2.2 任务与期望值关联4.2.3 使用(std::)promises4.2.4 将异常存与期望值中4.2.5 多个线程的等待 前言…

【Mysql】InnoDB 中的聚簇索引、二级索引、联合索引

一、聚簇索引 其实之前内容中介绍的 B 树就是聚簇索引。 这种索引不需要我们显示地使用 INDEX 语句去创建&#xff0c;InnoDB 引擎会自动创建。另外&#xff0c;在 InnoDB 引擎中&#xff0c;聚簇索引就是数据的存储方式。 它有 2 个特点&#xff1a; 特点 1 使用记录主键…

【每日挠头算法题(2)】压缩字符串|仅执行一次字符串交换能否使两个字符串相等

文章目录 一、压缩字符串思路 二、仅执行一次字符串交换能否使两个字符串相等思路1&#xff1a;计数法思路2&#xff1a;模拟法 总结 一、压缩字符串 点我直达~ 思路 使用双指针法 大致过程如下&#xff1a; 使用双指针&#xff0c;分别读&#xff08;read&#xff09;&…

mPak的使用文档

mpak介绍 mpak是一种文件格式&#xff0c;同时也是一款虚幻引擎插件&#xff0c;该插件提供了打包、解析和挂载mPak文件的方法&#xff0c;将不同平台的软件包和未编译的资源集成到mPak文件中&#xff0c;该文件具有跨平台兼容性。它支持不同阶段的挂载&#xff0c;例如在编辑…

monaco-editor插件自定义编辑器内容颜色

开始之前先说一下他的自定义内容颜色的api monaco.languages.setMonarchTokensProvider((languageId: string, languageDef: IMonarchLanguage | Thenable<IMonarchLanguage>)) 参数解析&#xff1a;接收两个参数 一个是你要设置的编辑器语言种类&#xff0c;可以是sq…

Ubuntu14.04安装igH EtherCAT Master

一、下载EtherCAT安装包 安装包下载路径&#xff1a;EtherLab EtherCAT Master / Code / [334c34]&#xff0c;打开后点击Download下载 二、安装前置依赖库 最好切换到root用户进行下列步骤 apt-get install autoconf automake libtool net-tools三、编译安装 解压安装包&a…

excel如何折叠展开行列?

Excel可以使用分组功能来实现折叠展开行列的效果&#xff0c;同时可以在单元格内添加号或-号来进行操作。 具体步骤如下&#xff1a; 1. 选中需要进行折叠展开的行或列&#xff0c;右键选择“分组”。 2. 在弹出的“分组”对话框中&#xff0c;选择“行”或“列”&#xff0…

『赠书活动 | 第十一期』清华社赞助 | 《Python系列丛书》

&#x1f497;wei_shuo的个人主页 &#x1f4ab;wei_shuo的学习社区 &#x1f310;Hello World &#xff01; 『赠书活动 &#xff5c; 第十一期』 本期书籍&#xff1a;《Python系列丛书》 公众号赠书&#xff1a;第三期 参与方式&#xff1a;关注公众号&#xff1a;低调而奢…

逻辑回归分类器-创建词向量-情感分析

题目 请使用您今天学习的逻辑回归分类器对下面的聊天机器人数据进行自动分类。&#xff08;3分&#xff09; https://github.com/songys/Chatbot_data&#xff08;ChatbotData.csv文件&#xff09; https://raw.githubusercontent.com/songys/Chatbot_data/master/ChatbotDa…