| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 移动开发 -> 小程序基础知识 -> 正文阅读 |
|
[移动开发]小程序基础知识 |
一、基础要点1.标签text 相当于web中的 span标签?行内元素 不会换行? view 相当于web中的 div标签?块级元素 会换行 block 占位符的标签 写代码的时候可以看到这标签存在 页面渲染小程序会把它移除掉 ? ? ? ? ? (如果不想额外的添加标签可以使用block) 使用vscode编辑器,可安装?微信开发助手 插件 ? ? ? ? 快捷键:鼠标插入多行:alt+鼠标左键? 复制多行:鼠标+alt+往下拖动 2.数据绑定
3.运算运算 =>表达式 1.可以在花括号中 加入 表达式? ≠? " 语句 " 2.表达式:指的是一些简单 运算 数字运算 字符串 拼接 逻辑运算... ? ? ? ? a.数字的加减 ? ? ? ? b.字符串拼接 ? ? ? ? c.三元表达式 3.语句:指的是复杂的代码段 ? ? ? ? a.if else ? ? ? ? b.switch ? ? ? ? c.do while... ? ? ? ? d.for...
? 4.数组和对象循环? ?wx:for? ? ? ? 列表循环 ? ? ? ?a.wx:for="{{数组或者对象}}"? wx:for-item="循环项的名称"? wx:for-index="循环项的索引" ? ? ? ?b.wx:key="唯一的值"? 用来提高列表渲染的性能 ? ? ? ? ? ? 1. wx:key 绑定一个普通的的字符串的时候,那么这个字符串名称肯定是循环数组中 ? ? ? ? ? ? ? ? 的对象的唯一属性 ? ? ? ? ? ? 2.wx:key="*this"? 就表示 你的数组 是一个普通的数组? *this 标识是循环项 ? ? ? ? ? ? ? ?[1,2,3,4,5] ? ? ? ? ? ? ? ?["1","222","aaa"] ? ? ? c.当出现数组的嵌套循环的时候,尤其要注意以下绑定的名称 不要重名? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?wx:for-item="item"? ?wx:for-index="index" ? ? ? d.默认情况下,我们不写 (wx:for-item="item"? ?wx:for-index="index" ) ? ? ? ? ? ? ? 小程序也会把循环项的名称和索引的名称 item 和 index ? ? ? ? ? ? ? 只有一层循环的话? (wx:for-item="item"? ?wx:for-index="index" ) 可以省略
????????对象循环 ? ? ? ? ? ??a.wx:for="{{对象}}"? wx:for-item="对象的值"? wx:for-index="对象的属性" ? ? ? ??????b.循环对象的时候最好把item和index的名称修改一下 ? ? ? ? ? ? ? ? wx:for-item="value"? wx:for-index="key"? ? ? ? ? ? ? ? ?
5.条件渲染? ? ? ? a. wx:if="{{true/false}}" 显示/隐藏 ? ? ? ? ? ? ?if,else,if else ? ? ? ? ? ? ?wx:if???????? ? ? ? ? ? ? ?wx:elif ? ? ? ? ? ? ?wx:else ? ? ? ? ? b. hidden ? ? ? ? ? ? ? ?1.在标签上直接加入属性 hidden ? ? ? ? ? ? ? ?2.hidden="{{true}}" ? ? ? ? ?注:什么情境下用哪个???????? ? ? ? ? ? ? ? ? 1.当标签?不是频繁的切换显示 优先使用 wx:if? ( 直接把标签从页面结构给移除掉 ) ? ? ? ? ? ? ? ? 2.当标签频繁切换显示的时候优先使用hidden ( 通过添加样式的方式来切换显示?) ? ? ? ? ? ? ? ? ? ? 所以hidden 不能 和 display 一起使用 ? ? 6.事件绑定? ? ? ? ? ?小程序中的数据双向绑定 . 首先通过 bindinput 绑定文本框的输入事件 ??. 在 data 中声明一个变量 content ,将其动态绑定成文本框的 value 值 ? ?. 在 bindinput 事件中通过事件参数 e.detail.value 可以获取到文本框中最新的 value 值 ? ?. 通过 this.setData 将文本框最新的 ?value 值 赋值给 动态绑定的value值 content ?即可实现数据的双向绑定 ? ? ? ? ? ? ? a. 需要给input标签绑定 input事件 ? ? ? ? ? ? ? ? ? 绑定关键字? bindinput ? ? ? ? ? ? ? ?b. 如何获取 输入框的值 ? ? ? ? ? ? ? ? ? ?通过事件源对象来获取 ? ? ? ? ? ? ? ? ? ?e.detail.value ? ? ? ? ? ? ? ? c. 把输入框的值赋值到data当中 不能直接 ? ? ? ? ? ? ? ? ? ? ?1.this.data.num = e.detail.value ? ? ? ? ? ? ? ? ? ? ? 2.this.num =? e.detail.value ? ? ? ? ? ? ? ? ? ? 正确的写法 ? ? ? ? ? ? ? ? ? ? ? ? this.setData({ ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?num:e.detail.value? ? ? ? ? ? ? ? ? ? ? ? ? }) ? ? ? ? ? ? ? ? ?d. 需要加入一个点击时间? ? ? ? ? ? ? ? ? ? ? ? ? 1. bindtap ? ? ? ? ? ? ? ? ? ? ? ? 2. 无法在小程序当中的 事件中 直接传参 ? ? ? ? ? ? ? ? ? ? ? ? 3.? 通过自定义属性的方式来传递参数 ? ? ? ? ? ? ? ? ? ? ? ? 4.?事件源中获取? 自定义属性
二、样式wxss1.尺寸单位? ? ?
建议:开发微信小程序时设计师可以用iphone6作为视觉稿的标准 使用步骤:
2. 样式导入
? 3. 选择器? ? ? ?需要注意的是, 小程序不支持通配符 * 因此以下代码无效????????
4.小程序中使用less? ? ?原生小程序不支持less, 其他小程序的框架大体都支持,如wepy , mpvue, taro 等,但仅仅因为一个less功能,而去引入一个框架,肯定是不可取的,因此可以用一下方式来实现。 ? ? ? 1. 编辑器是vscode ? ? ? ?2. 安装esay less ? ? ? ?3.在vs code中的设置中加入 如下配置????????
? ? ? ? 4. 在要编写样式的地方,新建less 文件,如index.less 然后正常编写即可 ? ? ? ? 5.也可@import导入 三、常见组件
1.view??? ? ?代替原来的div标签? ( 还可加按下去的样式类) ?2.text
space:
3.image
4.swiper | 微信开放文档
5.navigator | 微信开放文档
? 6.rich-text | 微信开放文档? ? ? ?富文本标签? nodes
?
|
|
移动开发 最新文章 |
Vue3装载axios和element-ui |
android adb cmd |
【xcode】Xcode常用快捷键与技巧 |
Android开发中的线程池使用 |
Java 和 Android 的 Base64 |
Android 测试文字编码格式 |
微信小程序支付 |
安卓权限记录 |
知乎之自动养号 |
【Android Jetpack】DataStore |
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/24 10:41:23- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |