Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations...

157

Transcript of Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations...

Page 1: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31
Page 2: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

Universal Applications

Stepan Parunashvili

2

Page 3: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

@stopachkawww.stepanp.com

3

Page 4: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

Universal Applications

4

Page 5: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

Isomorphic?

5

Page 6: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

6

Page 7: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

7

Page 8: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

8

Page 9: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

Isomorphic

9

Page 10: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

Universal

10

Page 11: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

11

Page 12: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

...2015

12

Page 13: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

...2014

13

Page 14: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

...2013

14

Page 15: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

...2012

15

Page 16: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

...2011

16

Page 17: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

...2010

17

Page 18: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

...2009

18

Page 19: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

2008

19

Page 20: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

20

Page 21: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

21

v2.2.2

Page 22: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

22

Page 23: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

23

Page 24: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

24

javascript?

Page 25: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

25

Page 26: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

26

Page 27: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

27

routingvalidationviews

Page 28: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

28

routingvalidationviews

c00l animations

Page 29: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

29

routingvalidationviews

c00l animations(in some browsers...b^.^d)

Page 30: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

30

Page 31: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

31

Page 32: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

2009...

32

Page 33: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

2010

33

Page 34: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

34

Page 35: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

35

v0.1.0

Page 36: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

36

Page 37: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

37

Page 38: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

38

Page 39: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

39

Page 40: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

40

routingvalidationviews

Page 41: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

41

...routing

...validation

...views

routingvalidationviews

Page 42: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

42

Page 43: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

43

Page 44: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

44

Page 45: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

is it just the way things are?

45

Page 46: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

46

Page 47: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

47

Page 48: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

48

routingvalidationviews

Page 49: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

49

Page 50: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

50

what if we made our own representation of the dom...

Page 51: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

...React!

51

Page 52: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

win 1: code sharing

52

Page 53: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

win 2: perceived performance

53

Page 54: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

win 3: SEO

54

Page 55: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

Can we build this?

55

Page 56: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

Can we build this?

56

Page 57: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

57

Page 58: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

58

server.js

Page 59: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

59

server.js

Page 60: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

60

server.js

Page 61: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

61

server.js

Page 62: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

62

Page 63: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

63

Page 64: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

64

server.js

Page 65: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

65

server.js

Page 66: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

66

server.js

Page 67: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

67

Page 68: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

Time to react

68

Page 69: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

69

components.js

Page 70: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

70

server.js

Page 71: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

71

server.js

Page 72: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

72

server.js

Page 73: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

73

server.js

Page 74: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

74

Page 75: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

75

components.js

Page 76: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

76

components.js

Page 77: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

77

components.js

Page 78: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

78

Page 79: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

79

server.js

Page 80: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

80

server.js

Page 81: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

81

server.js

Page 82: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

82

load client side reactclient.js

Page 83: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

83

Page 84: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

...Now the views are shared

84

Page 85: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

What's the catch?

85

Page 86: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

build tools(webpack, babel & family)

86

Page 87: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

Time to route

87

Page 88: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

88

client.js

Page 89: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

ReactRouter

89

Page 90: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

90

server.js

Page 91: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

let's disable universal rendering for now

91

Page 92: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

92

server.js

Page 93: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

93

server.js

Page 94: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

94

components.js

Page 95: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

95

load client side reactcomponents.js

Page 96: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

96

load client side reactroutes.js

Page 97: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

97

load client side reactclient.js

Page 98: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

98

load client side reactclient.js

Page 99: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

show it working

99

Page 100: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

100

Page 101: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

101

Page 102: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

disable js

102

Page 103: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

103

server.js

Page 104: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

104

server.jsserver.js

Page 105: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

105

server.jsserver.js

Page 106: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

106

server.jsserver.js

Page 107: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

107

server.jsserver.js

Page 108: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

show it working

108

Page 109: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

How about stores?

109

Page 110: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

110

client.js

Page 111: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

111

client.js

Page 112: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

112

client.js

Page 113: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

113

client.js

Page 114: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

114

client.js

Page 115: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

115

client.js

Page 116: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

116

server.jsserver.js

Page 117: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

117

server.jsserver.js

Page 118: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

118

server.jsserver.js

Page 119: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

initial data

119

Page 120: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

120

client.js

Page 121: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

121

client.js

Page 122: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

122

server.js

Page 123: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

123

server.js

Page 124: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

124

server.js

Page 125: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

125

server.js

Page 126: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

126

server.js

Page 127: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

127

server.js

Page 128: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

ok, ok.... ...

128

Page 129: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

How about data fetching?

129

Page 130: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

130

api.js

Page 131: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

131

api.js

Page 132: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

132

components.js

Page 133: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

133

components.js

Page 134: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

134

server.js

Page 135: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

135

server.js

Page 136: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

136

server.js

Page 137: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

137

server.js

Page 138: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

/home -> /page/2 ?

138

Page 139: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

139

client.js

Page 140: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

140

client.js

Page 141: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

141

client.js

Page 142: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

...but there's a library for that

142

Page 143: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

react-resolver

143

Page 144: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

is it all rosy?

144

Page 145: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

not really

145

Page 146: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

but the payoff?

146

Page 147: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

147

Page 148: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

148

Page 149: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

149

Page 150: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

150

routingvalidationviews

Page 151: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

wait... single-threaded-backend?

151

Page 152: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

ClojureScript.

152

Page 153: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

ClojureScript. Boom

153

Page 154: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

so..

154

Page 155: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

Build Declaratively

155

Page 156: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

Question assumptions

156

Page 157: Universal Applications - 前端圈 · 2016. 3. 21. · 29 routing validation views c00l animations (in some browsers...b^.^d) 30. 31

Questions?

157