|
(全)纯正商业级应用-微信小程序开发实战 2018年某课网 高清视频+源码+素材 共11.88G ! Q+ A q- t" g: d, m6 H2 c& q
课程简介:6 u; C! J" d3 Q5 R; e
小程序的成功,让广大程序员早已不再纠结该不该学习小程序开发 ,但会纠结如何学习小程序开发,直到他们遇到了 “七月”老师,你可以自行看看七月老师其它课程的学员对他课程的真实评价,选择他的课,不需要纠结,更不需要犹豫
# ]1 w9 d; J3 P7 Y6 V- p
, S6 f) }; X8 k. a+ K6 d- H7 M课程目录:6 b( [& Q: _5 g5 O/ f! s' e
第1章 导学与申请appkey- x+ u8 e, B+ W1 N
如何更好的学习本课程?如何申请开发者key?如何调用和测试接口?
" |" j& k) y/ M! J3 ^; C5 B 1-1 微信小程序商业级实战-课程导学。
0 g5 [8 u0 Z" e( F7 y0 p( N 1-2 优先自己开发) \5 ]9 z) F* X6 y
1-3 appkey的申请( r" ]# o6 |0 ]5 h
1-4 课程维护说明
. k1 I' _% O$ Z _, z7 E1 q% _. e& b# U7 X* ~8 [
第2章 准备工作
# b/ h7 T& L; k1 @- ?# _; p- u 开发前的准备工作以及第三方开发工具的选择
6 p+ Q. Z3 L# F6 e$ u 2-1 流程与开发前准备0 B, i$ a2 s0 f8 _
2-2 新建小程序项目
* ^( ]$ k( Y0 |# a, f- ^$ z$ ]/ h 2-3 小程序开发工具介绍
; e. t+ I( i. q+ d/ S+ w 2-4 第三方开发工具介绍
0 `9 ^7 O3 l1 j0 e( g6 }" C! H: a0 ~: [: E
第3章 小程序的基础知识与新特性
+ Y, ^1 j q2 e, H h! l2 a F, L$ W 讲解小程序的一些必须要掌握的基础知识,如文件类型、项目结构、配置文件等。部分之前老课程中没有涉及的重要新特性也会在本章节提及" t# E% W+ b& r9 E! o& G7 y9 m
3-1 小程序的4种文件类型& p: }. W# G5 W S' R% v0 V0 X4 L4 s" ]
3-2 小程序的组织结构
! K1 b$ S; P# w4 }4 Y 3-3 新建第一个小程序页面
: y, r" A: }! S# U2 ~2 [- Y 3-4 -1 消除错误提示
. r9 J5 e3 R7 _" F) K 3-5 app.json配置之导航栏
5 f2 D2 b- a* @# g4 K ~4 n 3-6 app.json之background窗口# L0 _: Q6 c7 Y7 d8 m! W
3-7 wxml与组件9 P: H/ ?+ ^7 G7 w0 O/ u( D
$ b; \" p9 N( s* b- P
第4章 flex布局
9 d" X9 s0 L6 N' ? 我们将在本章中详细学习flex布局的基础知识,为在项目中灵活应用flex布局打下坚实的基础
$ K' O: ^' n5 ?, r 4-1 小程序代码编写规范 K6 r& m& |( v6 @! w/ ]
4-2 所谓布局) i& t" s, W j3 _" ?4 X
4-3 block、inline与inline-block
) q* \7 M2 ?1 v ]# c" Y 4-4 flex容器将消除item的块状特性
6 X) n$ n F3 f3 h 4-5 flex-direction的应用1 n' U% \# T( l( V( S1 W4 r" C
4-6 reverse倒序排布
( v5 k) J% d" R( i% y 4-7 reverse效果揭秘
! p4 @# A7 P' m6 |/ v6 n3 x 4-8 justify-content属性解析 一
( q% A' j& \# W8 p 4-9 justify-content属性解析 二
1 i9 w* p" L! A$ t3 L1 L$ ? 4-10 主轴与交叉轴(重要) 一
2 u8 M% M, j$ p6 s 4-11 主轴与交叉轴(二)
3 g0 z9 w3 R; q U) n+ W' j 4-12 baseline与stretch
5 @6 [5 N' g; x 4-13 flex-wrap与消除间距
: ]/ B; z" E/ L: D
0 X& E9 n; |* o* ~" c: v 第5章 小程序基础知识与初识小程序组件
0 G1 v) z; w' Z; Z. U# N/ m0 y 本章我们将学习全局样式、相对/绝对路径、尺寸单位等小程序基础知识。同时,我们将初步介绍小程序自定义组件。
. E9 B8 S: C' ^# D 5-1 细节决定成败
1 L7 d- ]/ l) V! n2 K6 W 5-2 组件概述
2 y( G1 T0 A" ]8 @, `0 Z h 5-3 定义、引用与使用组件4 N: ]8 h+ y4 h b
5-4 相对路径与绝对路径: c) T; _+ w8 t# s+ J' z8 k+ N
5-5 like组件实现; m) o) Q9 X$ W# K, x
5-6 小程序尺寸单位与设计原则(重要)# x2 O" I0 e" ?( j! {1 d
5-7 小程序支持的css选择器远比文档中要多) X, p% R. i, X8 g- d( i- @
5-8 苹方字体设置$ [* K' }( S p& k7 l
5-9 page样式的巧妙应用
5 E9 B$ @ n& U; O' E/ T8 z 5-10 组件只能继承极少数全局样式" ]% J$ U4 l Q. I5 u3 x
5-11 组件最好不要留有空白间距
2 y) A; d+ P& F m 5-12 固定宽度还是自适应?4 N% L' A: @: F. l2 w' c M: V9 J0 Y
5-13 组件事件与事件处理4 s K3 N w4 \9 S
) \9 G- ~* K0 c8 v9 y
第6章 组件数据、事件与属性# r1 Z2 f. T1 u/ F% e# Y% F
本章我们将深入学习组件的开放性与封闭性以及组件封装的原则- B2 ~. o( F* M- t' a
6-1 数据来源的三种途径% B) t3 g' O& D
6-2 数据绑定7 t* X! v- E( |2 w7 \
6-3 三元表达式与图片切换
0 ?) i/ [, }6 q5 _0 E6 e3 E 6-4 组件的封闭性、开放性及粒度
2 t0 Y; Y" ^, Y% x( ] 6-5 组件的properties属性详解) `( J; y/ b V4 D3 E7 H+ H) k
6-6 let、var与组件事件应用
1 w, u& i$ p3 H6 b4 h2 y2 {. a0 c8 D& A8 O" ^+ q. s, b2 @% f
第7章 访问API数据与ES6在小程序中的应用) F! b: w0 g t3 o5 x U
本章,我们将从一个简单wx.request开始,讲解同步与异步的区别,promise的意义,ES6中箭头函数、class、const、module、export与import在小程序中的巧妙应用。同时,我们也将初步探讨封装代码的必要性" l! @# W2 d) H3 l
7-1 看待组件的两种观点(重要)- @* L, n+ U+ V
7-2 Blink API介绍与测试API
' u8 ^2 O, ` u3 s5 z8 Y 7-3 生命周期函数3 {' @) j3 H1 p/ j _7 ^% ?
7-4 wx.request-4xx状态码并不会执行fail
# ~6 X- p4 g; d6 {' w5 n% [ 7-5 访问API获取数据2 F/ ^7 V {& `# ]8 I" s) _. S' [# K
7-6 同步、异步与回调函数2 u' j4 S. D; ]8 X5 L4 A
7-7 ES6箭头函数与this指代
], P7 d+ f# z6 G; p0 B: Z. ~$ | 7-8 正确理解Promise(选看)3 v& R# h, u/ Y: Q9 D4 N" f
7-9 ES6 const常量
0 y1 M3 h1 ]8 X' t# g% \ 7-10 ES6 Module export与import$ \1 y" @2 {7 S* D+ Q# J# l& G
7-11 HTTP类的封装与ES6 startsWith
$ Y) W. y& l3 W. T 7-12 分析问题的思维培养与练习
: g! d r6 J) n! \& ^9 F9 a 7-13 分析问题的思维培养与练习二
% z' z/ X, B3 p( \$ n | 7-14 回调函数传递: s3 A/ T; i* } [
7-15 通用错误异常处理(重要)
6 E, h" _# Z8 _: k9 n* E3 v- ~0 d: } w, U+ d N" I
第8章 流行页面编码与组件的细节知识
! `. G+ t9 g( m. s1 Z+ b" d 本章,我们将逐步编写流行页面中剩余的电影组件、期刊组件、导航组件,并进一步的完善喜欢组件。同时,我们将在本章节进一步的讲解setData的真正意义、组件封装粒度、系统事件与自定义事件、properties和data的区别等重要的知识。本章内容非常丰富,加油吧。 ...# b& N/ ]/ t2 i+ X
8-1 什么是“剥夺函数return的能力”
* A) M! N% w) C5 [+ L# X3 h 8-2 组件属性赋值与页面渲染流程解析
2 V2 X3 @- Y& r/ q, t& O1 e, G 8-3 setData的误区(重要)& G, n8 H2 |& x \" j
8-4 movie组件的实现- A! q% z( r# p5 O1 {3 G+ G( N
8-5 再谈组件的粒度
5 p q$ { z; L& P( p 8-6 自定义事件的激活与监听
3 m4 H2 h1 f( }: P3 y" o) z 8-7 喜欢还是不喜欢' }$ ~- {( \! T, W9 v+ Q- K5 n
8-8 组件的生命周期函数
9 Y; ?& ~- _3 t& q' I 8-9 组件的data与properties的“奇怪”现象
2 M* e- X [( d1 u 8-10 业务逻辑到底写组件里还是页面里
! N9 a9 I' R2 ?! P 8-11 observer函数的应用
- J, q6 I* V: c 8-12 注意防范内存泄漏
X0 K- N& U9 B& h7 k2 j 8-13 千万不要在observer中修改自身属性值4 [" O" M6 Z* H( X' O
8-14 epsoide组件与流行页面样式
- [1 v. ^2 L @% k# M C( T N2 E6 u/ s
第9章 Behavior行为与加入缓存系统优化流行页面
. Z0 R5 O" a% g+ R/ e- \2 M8 F 即使服务器返回数据的速度再快,我们依然需要在页面中加入缓存系统来优化用户体验。组件是一种复用的逻辑,但多个组件间的共同JS代码又改如何复用?使用Behaviors行为将解决这个问题。同时,我们也将谈谈Behavior和多继承的思想。...
7 L8 y$ Z0 W& h7 L9 O 9-1 navi组件与移动端触碰区域探讨8 E9 U# S3 K% D: S
9-2 navi组件与flex宽度陷阱
: x) w e v+ h) D; H 9-3 禁用事件的技巧1 P: ^0 x2 }) Q; m6 t" g1 v; ?
9-4 music组件初步实现
( P- e+ ~ j8 B+ q 9-5 初识组件的Behavior行为
, W( E# m8 F# l: R- ^0 N: {2 I 9-6 behavior 继承与多继承的覆盖规则(重要)$ F, Z0 I( g8 q$ N
9-7 初步实现期刊切换
; v* F( V: X1 ~/ `$ x 9-8 是否是最新期刊的判断逻辑0 S( Q7 ]7 P3 Z# N9 ]; k
9-9 使用Storage保存最新期刊号" Y" B0 t: p& I% O' j4 h
9-10 onNext与函数重构技巧
0 h6 R- P0 |( L5 p( R- ?. E/ P4 k' }
第10章 新版Music组件、组件通信与wxss样式复用$ o( q' H$ E5 E3 h/ r
本章,我们将进一步优化缓存带来的附加问题。缓存的使用绝对不仅仅是setStorage和getStorage这么简单,缓存的加入将带来一些新的问题,这些问题的处理细节体现了一个前端程序员的成熟度。同时,我们还将学习ES6扩展运算符和模板字符串在小程序中的应用、wxss样式的复用、让自定义组件支持hidden属性与组件通信。本章是业务...
5 r# h; j9 g) u$ e3 o T 10-1 谈谈缓存对于改善用户体验的作用% e0 m3 H) F8 W" Y, Q. w
10-2 解决缓存带来的问题
+ R0 q+ C- m) R0 b Q+ s2 B: Y 10-3 ES6模板字符串和扩展运算符的应用: A) |) k* ~9 X
10-4 独立更新like组件状态
$ G3 Y2 E5 c" v0 k 10-5 如何让自定义组件支持hidden?% t2 [( \* c8 L8 {6 M
10-6 @import在组件间复用样式
( g2 c( G# u0 S+ k& u3 o8 h 10-7 music组件样式
9 i( G0 p: U r$ i: X 10-8 新版音乐播放对象6 P* d4 _7 v a/ \5 m; _$ @
10-9 组件间通信' a; R+ a! M8 u- P1 N% K9 r$ r$ o3 q
10-10 hidden不会触发组件的detached,但wxif会8 _5 S; Z e- g6 z
10-11 完成音乐播放
9 \1 }$ ~4 f( v, b1 w3 x" O 10-12 用简洁的代码优化音乐播放& S @# k$ E& _/ y i3 r
10-13 真实感受Component与Model的好处3 ^) m+ X& b, Q. Y
' g: \" F+ p1 \* T 第11章 Promise正确用法与函数签名设计技巧
/ R: Y' C8 A# L0 A, f 目前来说,由于小程序占时不支持async与await,所以Promise是小程序处理异步的最佳解决方案。即使支持async,它也只是Promise的语法糖,所以Promise是必须要学习的基础。很多同学对于Promise的理解不够深刻,导致Promise使用不正确。本章我们将讲解Promise的正确使用方式,重构http.js,同时还将使用ES6对象解构、默认值等...
0 ^8 S6 \7 f: B2 `2 T% C2 @% ^7 w4 q/ G 11-1 tabBar配置
# C; w) D8 X& O0 U4 f+ F+ U 11-2 airbnb编码规范
* J) ]% k7 Q" R, d: {5 K 11-3 纯粹回调、Promise与async、await) J! p. }6 @! y0 w! R* O
11-4 Promise的本质与用法
% E w; q) ~0 r4 Y 11-5 Promise重构 一 参数列表设计原则与默认值. F; \4 I1 J6 @. \; _8 y& V) U2 S
11-6 Promise重构 二 重构request) c$ t3 \5 Z( w+ n4 E# u) [) g2 T
11-7 Promise重构 三 对象解构- V: l, ?! n- C6 Q% g
11-8 Promise的正确用法( T9 q& ^4 ]+ ^# C$ t0 r1 w
- O X+ l4 k; c S6 q j
第12章 组件高级应用9 P' t4 O( u; W& t) \
本章我们将探讨组件的slot插槽和外部样式类。组件最难平衡的是内置默认样式和用户自定义样式的需求,我们将一起来探讨一个不错的解决方案。我们将看到,小程序其实不仅仅提供了属性、还提供了wxml的标签的传递与样式的传递。wxml的传递是通过插槽,样式的传递是通过externalClass.... B: l6 D1 w; B5 [: o; D# `
12-1 图书组件( m- t7 \; g' Y$ c* C8 B1 A
12-2 列表渲染/ c: s" R1 F7 ~7 I( L1 | }( I
12-3 书籍首页布局
2 e" D' \4 W1 L; V; d6 }; E$ X! D7 o" O 12-4 巧用flex布局简化CSS
$ R0 x. q6 r" a8 _+ ` 12-5 wx:key的用法与意义
3 J, _1 @3 y' K6 B: ~1 V 12-6 项目型组件与通用性组件
S% E7 L6 `4 {! r* i0 X9 h; K 12-7 书籍详情页面三组数据加载8 w9 F V. A* H8 O- ^- }" D
12-8 三种小程序编译模式 T- F' v! O4 z& T
12-9 标签组件难点提示) ~5 T% v6 p* f4 `
12-10 标签布局 }3 t* Z* V0 v6 U. J' Q- s
12-11 组件设计思想:slot插槽的使用3 j( j: \5 c& Y( B+ j# {
12-12 自定义组件样式探讨 一:hack方式
. _! ]( a$ {' O4 J 12-13 自定义样式探讨2:外部样式的概念
5 c" Z7 ^0 m* M* ^# j4 X 12-14 自定义组件样式3:外部样式的问题
9 z4 ]* q8 o, a0 \& b5 z 12-15 自定义样式4:外部样式如何强制覆盖普通样式7 p6 s/ `2 ~& v
12-16 外部样式类的使用技巧
% W# E1 D8 Z; o$ Q
: J' W) `" q6 d4 y0 T$ ^3 p 第13章 小程序wxs的应用
+ o5 J! Y8 C. {1 Q) p, ?! @ wxs是微信为小程序定制的一套脚本语言,同JS类似,但又有很多不同。很多同学认为wxs没有什么用,但其实是很有用的。比如开源组件中就可以提供一套wxs编写的filter过滤器。本章,我们将来深入探讨一下wxs的应用场景。
: X9 w; p8 r1 T' ]2 F/ s 13-1 分析换行符 不解析换行的原因; ~- t6 b1 O6 z% Q: s7 t
13-2 wxs的概念与应用10 o2 D7 W4 R" G9 q
13-3 wx的概念与应用2, A3 |6 B: {+ }$ P- _
13-4 wx的概念与应用3
+ D; _+ p6 l# j" N' V$ K$ y$ E# k 13-5 在小程序中编写limit过滤器
# i1 K! n- ?& ?, i+ _# f" {( ~# f) Y" j 13-6 短评功能分析9 }5 \) K( K* } j2 Z
13-7 短评实现一
! n) f6 O% f. w( M5 I* {+ o+ | 13-8 短评实现二
; B& F( E1 ~; e( J 13-9 短评实现三:在wxml中编写wxs代码
+ [' K; @3 c# ]7 {' f& X! o' R 13-10 短评实现四:mask组件0 a8 P- S$ g: w( \
13-11 短评实现五:提交短评数据
& H3 Y1 X3 n( c. ^ n. } 13-12 短评实现六:支持input输入短评2 m% `9 p+ z3 x6 @& r
13-13 短评实现七:细节处理/ ?9 o7 ]" _/ {
: K. u; L: G2 F$ h$ J# A# g8 c) \
第14章 搜索与高阶组件" l' _! u% [+ m6 u: F
搜索基本上是任何一个产品都不会缺少的功能。但是一个好的搜索组件,细节是非常多的。本章,我们将完成历史搜索、热门搜索等诸多商业级严谨搜索功能。同时,我们也将提出“高阶组件的”概念,区别于普通组件,高阶组件更为复杂 ...
# Z% t+ |8 j' b, D 14-1 并行请求与串行请求0 H# s3 q( u b4 }9 F2 Y* H
14-2 Promise.all与Promise.race
E3 h* I. h4 e# S( ~; t* Z 14-3 高阶组件示例1:搜索组件: x/ Q' `. u4 M2 H% P: ]6 a* L3 C
14-4 自定义组件的models目录探讨
) D! y- t! s$ M. L1 j& u v 14-5 数据结构队列的应用
: _8 J6 c5 C i* g/ _ 14-6 队列测试# D I. p& [: i& r
14-7 实现历史搜索
, ?& C5 ~* B/ @8 J 14-8 实现热门搜索# B. }0 n' f2 o) h9 ?) P3 Q! ?
14-9 搜索实现1/ D( i6 m( [- s6 F* A+ o3 i8 B
14-10 搜索实现2- q, e# S9 M3 q4 ~" c) g1 K, |# _
14-11 搜索实现30 b* j8 \5 `+ B+ |4 y
14-12 搜索实现4:动态绑定input输入, p& i( W* [" g- A* D% A6 D* t2 V8 j
. G7 P& G0 n/ r$ v 第15章 代码重构与行为抽象4 x8 F' ?/ U, i! Z
本章我们将重构搜索代码,将分页逻辑提取成一个“行为”。以后,当我们遇到任何一个需要使用分页逻辑的组件时都可以服用分页Behavior。此外,本章有大量的细节需要我们完善。比如如何对搜索加“锁”,如何判断是否还有更多数据等。 ...
" L" y' i4 P" [1 j* _; p& { d 15-1 用随机字符串触发Oberver函数
' m5 t0 K* m' F' Y 15-2 加载更多数据的判断技巧
% b, @" ~6 K0 L% Q! v/ T4 m 15-3 使用锁的概念解决重复加载数据的问题
& c9 q( k. @& } 15-4 组件行为逻辑抽象——分页行为
- G6 a- i1 t2 R N$ g: A# | 15-5 是否还有更多数据的判断逻辑
- `$ n, Z$ ~" G- Y/ q X3 b 15-6 搜索代码重构——增强代码可阅读性
9 N% d8 L, n6 } 15-7 注意避免死锁* {9 t, d" _- V! f* e8 [3 L
15-8 特别注意setData与直接赋值的区别
3 b6 ^% u$ h5 u& g% i 15-9 空搜索结果的处理; d) i+ l3 }: v4 v5 x
# B! `# q/ U# j1 S5 _
第16章 高级知识与应用
# n$ N* u1 A8 P+ m) V) N 本章,我们将试着学习和应用一些比较抽象的知识。这些知识并不是必备的,但好的程序员必须学会这种思维和编码习惯。我们将在本章进一步优化和重构代码,学习新版微信授权机制、自定义小程序button组件、将内置的小程序API转换成Promise、复用整个Page等知识。...
8 m, ~: M( x% g$ u. ~# g9 A 16-1 将锁提取到分页行为中" N. j# U O- u& M) a, e
16-2 open-data显示用户信息3 K+ p% A9 x% i- q, @" U
16-3 新版微信授权机制
$ p* V- Z" r! i' _ 16-4 wx.getUserInfo需要用户先授权
# F Y" V V( k! H" j7 I 16-5 通过opensetting判断用户是否授权
6 [6 u' M" Z, j0 w% a/ }* Y 16-6 自定义button实现获取用户信息
$ y+ I% N9 j. ^. u9 t: N 16-7 为什么有open-data还需要getUserInfo?* e' D0 }8 }+ h+ }4 b4 B' m
16-8 自定义分享button
3 Y w+ k& B6 `0 I0 }7 J6 \& v( k: o 16-9 小程序之间的跳转; I1 {0 j: Z3 @3 U4 Y
16-10 preview组件2 X$ Y7 ^6 s) K: y/ B
16-11 简单聊一下小程序云开发的场景和意义
) K6 s0 S, K5 f/ p4 ]
+ n' m; F, r# K& S9 h- Z, g( N$ L5 v8 @- V
视频截图: 百度网盘下载地址: ) r$ o8 w6 e5 @2 u# o; E
|
|