文章出处,原创于 https://HawkingOuYang.github.io/
小程序裸奔教程
https://zhuanlan.zhihu.com/p/37667537?utm_source=qq&utm_medium=social&utm_oi=800678243513569280
wepy
https://tencent.github.io/wepy/index.html
https://tencent.github.io/wepy/document.html#/
小程序 资料 (good)
https://www.w3cschool.cn/weixinapp/
flex 浏览器 支持 ? 兼容查询
https://caniuse.com/#search=flex
小程序开发过程中常见问题 (good)
https://www.cnblogs.com/fastmover/p/9321504.html
谷歌也玩小程序了,2.8亿日活背后的新流量生态迁徙如何抓住新机会 |【经纬低调出品】
https://mp.weixin.qq.com/s?src=11×tamp=1532783483&ver=1026&signature=lgZRk2W1YbYMxsxDRgP3C9j0yPxTPccDc4zdHW0BRMOhIhHb7f*FpRuaau5GJitWpZmqmnZOtzZtHc0w-ofanhp7cMK566wLSIEbFSb3p15QsP8Lql5c6en8bclJ0c7v&new=1
小程序开发入门记录
二、接下来作为很多年客户端开发的老司机,肯定会想了解小程序的底层架构和原理,如何写出性能更好的小程序,利用小程序天然的异步和延迟能做哪些勾当,这个官方文档会详细讲解(https://developers.weixin.qq.com/ebook?action=get_post_info&token=935589521&volumn=1&lang=zh_CN&book=miniprogram&docid=0008aeea9a8978ab0086a685851c0a)
三、至于JS,会纠结一下面向对象,忍一忍,边写边看文档就OK了
CSS维基百科 https://zh.wikibooks.org/wiki/CSS
Flex 布局教程:实例篇 http://www.ruanyifeng.com/blog/2015/07/flex-examples.html
Flex 布局教程:语法篇 http://www.ruanyifeng.com/blog/2015/07/flex-grammar.html
JavaScript教程 https://www.liaoxuefeng.com/wiki/001434446689867b27157e896e74d51a89c25cc8b43bdb3000
onfire.js
https://github.com/hustcc/onfire.js/blob/master/README_zh.md
开发 | 小程序跨页传值的的问题,这个 JS 库就能解决(内附项目地址)
https://www.ifanr.com/minapp/878030
Flex 布局语法教程
http://www.runoob.com/w3cnote/flex-grammar.html
微信小程序组件化开发框架文档
http://www.hishop.com.cn/xiaocx/show_35435.html
运行环境差异
https://developers.weixin.qq.com/miniprogram/dev/devtools/details.html
博客:
CSS中的浮动和清除浮动,梳理一下!
https://www.jianshu.com/p/09bd5873bed4
CSS布局–浮动与定位
https://www.jianshu.com/p/2d286904fbce
文档流,浮动,定位及造成的影响文档流的知识点 (good)
https://www.cnblogs.com/tongtian17/p/6255777.html
1.浮动元素会从文档正常流中删除,但它仍会影响布局
2.浮动非替换元素必须为其指定width,否则元素的width会趋于0而导致浮动元素不能完整显示
3.一旦元素具有了浮动属性,它便成为了一个块级元素。
4.浮动元素的左右外边界不能超出包含块的左右内边界
5.浮动元素永不会重叠
6.浮动元素不会超过容器的上padding
7.后浮动的元素永不会超过先浮动元素的顶端
8.浮动元素会尽可能高地放置,便这个高受限于规则6和规则7
9.浮动元素的下边界没有要求,因此当容器不足以容下浮动元素时,浮动元素会向下延伸。但部分浏览器会采取增大容器高度以容下浮动元素,而对于符合CSS2.1规范的浏览器要想让容器容下浮动元素的一个可行方法是:让容器也浮动
10.浮动元素向下延伸时,不会影响正常文本的显示,文本会相对于浮动元素进行偏移。但部分文本背景会被浮动元素遮住
11.如果浮动元素设置了负的外边距、这将破坏规则4、6、7
12.当浮动元素的width>容器的width时,这会使得浮动元素超出容器的左右边界(超左超右依浮动方向而定)
13.浮动重叠规则:行内框(如strong)与浮动元素重叠时,其边框、背景、内容均位于浮动元素之上;块框与浮动元素重叠时,其边框、背景在浮动元素之下,而内容在浮动元素之上。
14.对某个元素应用clear:left,意味着这个元素的左边不能有浮动元素。
15.clear不能用于非块级元素,比如
,在大多数浏览器看来它是一个非块级元素,因此如果对br应用clear来清除浮动不会有任何效果,除非改变br的display:block。
16.如果某元素应用clear清除浮动,则此元素设置的上外边距值会被忽略,但会有一个重新计算的上外边距值(甚至可能为0).如果希望此元素与浮动元素之间有一个明确的间隔,可以在浮动元素上设置下外边距。
清除浮动的方法
如果一个父盒子中有一个子盒子,并且父盒子没有设置高,子盒子在父盒子中进行了浮动,那么将来父盒子的高度为0.由于将来父盒子的高度为0,下面的元素会自动补位,所以这个时候要进行浮动的清除。clear:both
1.使用额外标签法:
在浮动的盒子之下再放一个标签,在这个标签中使用clear:both,来清除浮动对页面的影响。
a.内部标签:会将这个浮动盒子的父盒子高度重新撑开
b.外部标签:会将这个浮动盒子的影响清除,但是不会撑开盒子。
注意:一般情况下不会使用这一种方式来清除浮动。因为这个清除浮动的方式会增加页面的标签。
2.使用overflow属性来清除浮动:
先找到浮动盒子的父元素,再在父元素中添加一个属性,就是清除这个父元素中的子元素浮动对页面的影响。
overflow:hidden;
3.使用伪元素(给父元素)来清除浮动:
|
|
像VUE一样写微信小程序-深入研究wepy框架
https://mp.weixin.qq.com/s/R2IlOzlA9Mb_XevDXAITdw
小程序wepy.js框架总结
http://www.cnblogs.com/cczlovexw/p/8461722.html
微信小程序详解——小程序的生命周期和页面的生命周期
https://blog.csdn.net/qq_26585943/article/details/54407202
微信小程序学习用demo:计算器;使用rpn.js实现eval函数功能
http://www.wxapp-union.com/forum.php?mod=viewthread&tid=1513
微信小程序使用第三方库(第三方js)问题
https://blog.csdn.net/u012421719/article/details/56676801
javascript/微信小程序中将String进行Base64编码并UTF-8格式输出
https://blog.csdn.net/huangmeimao/article/details/74905749
探索javascript中null和undefined的深渊 译
https://www.cnblogs.com/yiliweichinasoft/p/3700342.html
CSS3圆角详解
http://www.ruanyifeng.com/blog/2010/12/detailed_explanation_of_css3_rounded_corners.html
CSS 属性 will-change
https://developer.mozilla.org/zh-CN/docs/Web/CSS/will-change
使用CSS3 will-change提高页面滚动、动画等渲染性能
https://www.zhangxinxu.com/wordpress/2015/11/css3-will-change-improve-paint/
CSS中position的absolute和relative用法
https://www.cnblogs.com/cdgxa/p/4600242.html (good)
overflow: hidden用法,不仅仅是隐藏溢出
https://www.cnblogs.com/Likebard/p/5899512.html
对象拷贝 与 深拷贝 Object.assign()
https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/Object/assign
通过$navigate跳转同一页面,点击back按钮造成页面的data与页面显示不一致 #1728
https://github.com/Tencent/wepy/issues/1728
两级页面为同一路由时,后者数据覆盖前者 #322
https://github.com/Tencent/wepy/issues/322
解决方案: onLoad(options) { this.loadWithOptions(options) }
loadWithOptions(options) {
// 一些代码
}
高适应性的自定义导航栏开发思路
https://developers.weixin.qq.com/community/develop/doc/0006c012dc8028f04b070dd0551004
小程序设置 navigationStyle 是 custom 的时候,胶囊定位
https://developers.weixin.qq.com/community/develop/doc/000a22e2510bb814e8278fbfb5b004?highLine=%25E8%2583%25B6%25E5%259B%258A%25E4%25BD%258D%25E7%25BD%25AE
胶囊按钮的大小和位置与官方描述不符,求教真实尺寸
https://developers.weixin.qq.com/community/develop/doc/000a2a589ccec861de677fba651000?highLine=%25E8%2583%25B6%25E5%259B%258A%25E4%25BD%258D%25E7%25BD%25AE
小程序 埋点(即 表单提交formSubmit)
小程序 + 服务端, 联调 经验证:
1、登入 绑定 button, 表单提交 绑定 button
2、冒泡事件, 用户一个点击, 可以同时触发 ‘登入’(获取code, userid、token) 和 ‘表单提交’(获取表单id)
3、时序: 一个点击 同时 触发 ‘登入’和‘表单提交’ –> 弹窗授权登入 —> 登入之后 token userid openid —> 给 服务器上报 表单id
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Request.modifyVideo({
id: that.item.id,
item: that.item, // wepy的bug, 需要这样修改 数据item
title: title, // 视频标题
success: function (res) {
wepy.hideLoading()
wepy.showToast({
title: “编辑成功”
})
setTimeout(() => {
wepy.navigateBack({
})
}, 500) // 因为: 弹出toast, 所以: 延迟0.5秒
},
fail: function (e) {
wepy.hideLoading()
wepy.showModal({
title: “编辑失败”,
content: JSON.stringify(e),
showCancel: false,
confirmText: “确定”
})
},
complete: function () {
}
})
|
wepy.setKeepScreenOn({
keepScreenOn: false
})
judgeNameEmpty (strToJudge) {
var str = strToJudge
var s = Util.allTrim(str)
console.log(‘name: {‘ + s + ‘}’)
if (s.length === 0) {
return true
}
return false
}
copyPCWebPath(e) {
var path = ‘https://网址‘
wepy.setClipboardData({
data: path,
success: function(res) {
wepy.showModal({
content: path + ‘ 网址已复制,可在PC登录’,
showCancel: false,
confirmText: ‘确定’
})
}
})
},
<text class='fans-detail-text' style="{{(wepy.$instance.globalData.platform == 'android') ? 'margin-bottom: 6rpx;' : 'margin-bottom: 1rpx;'}}">{{fans}}</text>
|
// 小程序客服
.contactButton {
width: 100%;
height: 115rpx; // 115
background-color: transparent;
}
.contactButton::after {
border: 0;
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|