学习tp5和小程序过程需要记住的重点记录

1,box-sizing: border-box; 规定两个并排的带边框的框 border-box 为元素设定的宽度和高度决定了元素的边框盒。 就是说,为元素指定的任何内边距和边框都将在已设定的宽度和高度内进行绘制。

2,border-right: 1rpx solid #d9d9d9; /右边框样式:厚度,实线,颜色/

3,flex-flow属性是flex-direction属性和flex-wrap属性的简写形式,默认值为row nowrap

4,在.wxml文件的通过data-* 传值,后台通过e.currentTarget.dataset.*取值。 在循环出来的界面中,不同的界面可触发不同点击事件

<view class='btnimg' wx:for="{{imgTaps}}" wx:key="" bindtap="aaa" data-id='{{item.id}}'></view>

  

aaa: function (e) {
console.log(e.currentTarget.dataset.id);
}

5,微信小程序跳转传参

一般都是传字符串到下一页,如果要想传对象怎么办呢? 解决办法是先将对象转换为json字符串然后到下个页面将json字符串,再转化为对象。如下:

let str=JSON.stringify(e.currentTarget.dataset.item);
wx.navigateTo({
url: '/跳转路径/?jsonStr='+str,
})

  另一个页面加载

onLoad:function(options){
// 生命周期函数--监听页面加载
let item=JSON.parse(options.jsonStr);
this.setData({ward:item});
},

6, 表单提交需要 如果遇到多字段怎么办?(以小程序为例)

解决办法:获取全部的字段value 定义一个data(变量来存);定义一个数组arr 存放需要验证的字段  在需要验证的时候 用for of 来循环遍历value判断是否存在 (注意:for-of遍历value for-in遍历key)

//表单提交
formSubmit: function(e) {
let data = e.detail.value;//定义一个变量来存放字段value
let type = 1;//后端需要的类型
let c_type = parseInt(this.data.c_type) + 1;//文字转数字后加一 与后端类型对应
let latitude = this.data.latitude;
let longitude = this.data.longitude;
var openid = wx.getStorageSync('userid'); //获取缓存的openid
var details_img = this.data.imgCourseStr;//拼接图片路径为字符串 给后端传递
var cover = this.data.coverImgstr;//拼接图片路径为字符串 给后端传递 data.details_img = details_img;
data.cover = cover;
data.lng = longitude; //把获取到 data的longitude存到当前的data里
data.lat = latitude
data.teacher_id = openid, data.c_type = c_type;
data.type = type;
console.log(data)
// return let arr = ['nid', 'title', 'present', 'details_img', 'cover', 'start_time', 'exit_time', 'start_num', 'money', 'class_start_time', 'class_exit_time','class_time', 'c_type', 'c_address', 'c_number', 'c_money'];
for (let item of arr) {
// of item == value
// in item == key
if (data[item] == '') {
wx.showLoading({
title: '必填项未填',
})
setTimeout(function() {
wx.hideLoading()
}, 2000)
return
}
}
//等待区的地点
this.submit(data).then((data) => {
//这里是等待区 银行业务员已经帮你处理完成 并将处理结果告诉你了
wx.showLoading({
title: '成功',
})
setTimeout(function() {
wx.hideLoading();
wx.reLaunch({
url: '/pages/index/index',
})
}, 2000)
})
},

  7,理解重绘和回流

重绘:只操作改变dom节点的样式属性,性能比回流好

回流:操作dom节点,会重新编译执行,内存消耗较大

8,git 更改文件后重新提交到远程仓库

执行 git add . 命令 添加更改过的文件到本地仓库

然后 执行 git commit -m "注释" 提交 覆盖

最后 执行 git push -u origin master 把文件提交到远程仓库

小程序和PHP学习笔记 ----- 不定期更新。的更多相关文章

  1. 微信小程序开发:学习笔记[3]——WXSS样式

    微信小程序开发:学习笔记[3]——WXSS样式 快速开始 介绍 WXSS(WeiXin Style Sheets)是一套用于小程序的样式语言,用于描述WXML的组件样式,也就是视觉上的效果. WXSS ...

  2. 微信小程序开发:学习笔记[2]——WXML模板

    微信小程序开发:学习笔记[2]——WXML模板 快速开始 介绍 WXML 全称是 WeiXin Markup Language,是小程序框架设计的一套标签语言,结合小程序的基础组件.事件系统,可以构建 ...

  3. 微信小程序开发:学习笔记[7]——理解小程序的宿主环境

    微信小程序开发:学习笔记[7]——理解小程序的宿主环境 渲染层与逻辑层 小程序的运行环境分成渲染层和逻辑层. 程序构造器

  4. 微信小程序开发:学习笔记[5]——JavaScript脚本

    微信小程序开发:学习笔记[5]——JavaScript脚本 快速开始 介绍 小程序的主要开发语言是 JavaScript ,开发者使用 JavaScript 来开发业务逻辑以及调用小程序的 API 来 ...

  5. 微信小程序开发:学习笔记[4]——样式布局

    微信小程序开发:学习笔记[4]——样式布局 Flex布局 新的布局方式 在小程序开发中,我们需要考虑各种尺寸终端设备上的适配.在传统网页开发,我们用的是盒模型,通过display:inline | b ...

  6. 微信小程序开发:学习笔记[1]——Hello World

    微信小程序开发:学习笔记[1]——Hello World 快速开始 1.前往微信公众平台下载微信开发者工具. 地址:https://mp.weixin.qq.com/debug/wxadoc/dev/ ...

  7. 微信小程序开发:学习笔记[9]——本地数据缓存

    微信小程序开发:学习笔记[9]——本地数据缓存 快速开始 说明 本地数据缓存是小程序存储在当前设备上硬盘上的数据,本地数据缓存有非常多的用途,我们可以利用本地数据缓存来存储用户在小程序上产生的操作,在 ...

  8. 微信小程序开发:学习笔记[8]——页面跳转及传参

    微信小程序开发:学习笔记[8]——页面跳转及传参 页面跳转 一个小程序拥有多个页面,我们可以通过wx.navigateTo推入一个新的页面.在首页使用2次wx.navigateTo后,页面层级会有三层 ...

  9. 2019年高校微信小程序开发大赛学习笔记

    学做小程序(学堂在线笔记)一.传统布局 text-align:center //水平居中 margin-bottom: 60px //设置间距 二.弹性盒子布局 display:flex; flex- ...

随机推荐

  1. open:在终端打开文件|应用程序等

    1. 需求&解决方案 打开文件 或url(用默认应用程序): $ open fileName 打开文件 或url(用指定应用程序): $ open -a appName fileName ## ...

  2. Fetch的使用及兼容ie的处理

    Fetch 作为一个与时俱进的前端,Fetch当然应该有所了解和涉猎.如果你没有听说过Fetch,那么ajax应该不陌生吧.Fetch相当于是一个新版本的Ajax,虽然现在我们常常使用的仍是ajax, ...

  3. WIN 10下Mysql 5.7.21解压缩(免安装版)配置

    网上看了N多大神的东西东抄抄西抄抄,老是就不对,因为很多资料不是针对5.7这个版本的内容. 首先解压文件,比如我解压到D:\Program Files\mysql-5.7.21-winx64 第一步: ...

  4. thinkpad的E480安装ubuntu后wifi无法使用问题解决

    买了新电脑,安装ubuntu新系统之后,遇到了一个比较麻烦的问题,在ubuntu中,无法使用wifi. 用新产品就是要当小白鼠啊,查了一下资料,发现这个使用的rtl8821ce的wifi芯片,该wif ...

  5. C++Primer笔记之复制控制

    复制控制这一节需要注意的地方不多,主要有以下几点: 1.定义自己的复制构造函数 什么时候需要定义自己的复制构造函数,而不用系统提供的,主要遵循以下的经验说明: 某些类必须对复制对象时发生的事情加以控制 ...

  6. DRF项目工程基础包

    drf开发基础包 日常使用drf进行后端开发中,每次开发新项目就的做很多的工程基础配置操作,我觉得这样是没必要的,我们主要关注在业务的开发中,而不是每次都要做这些繁琐的基础操作,所以我把这些做了一个基 ...

  7. Python模块——subprocess

    subprocess模块 通过Python去执行一条系统命令或脚本. 三种执行命令的方法 subprocess.run(*popenargs, input=None, timeout=None, ch ...

  8. IDEA内置git功能的使用教程

    IDEA内置git功能的使用教程 IDEA git  IDEA被公认为是最好的java开发工具,除了在代码助手.代码提示.重构工具等方面有比较好的支持,还在各类版本控制工具(git.tfs.svn.g ...

  9. 如何开始DDD(续)

    上一篇针对用户注册案例简单介绍了如何使用 DDD,接下来我将继续针对这个例子做一下补充.先将User模型丰富起来,因为目前看上去他和贫血模型还没有啥大的区别. 首先还是由领域专家来说明业务,他提出了用 ...

  10. maven snapshot和release版本的区别

    Maven的Snapshot版本与Release版本 1. Snapshot版本代表不稳定.尚处于开发中的版本 2. Release版本则代表稳定的版本 3. 什么情况下该用SNAPSHOT? 协同开 ...