SlideShare a Scribd company logo
1 of 57
Download to read offline
REACT.JS
WHAT DO YOU
REALLY MEAN?
ZeT 周昱安
2 Slides & Demo
▹ Slides
▸ https://goo.gl/5488ov
▹ Demo
▸ https://goo.gl/GjWZbu
3
周昱安
● 國立彰化師範大學 資訊工程學系 四年級
● 努力畢業中,準備前往中央資工所軟工碩士班
● 前後端都寫,最近比較喜歡寫前端
● Laravel Taiwan 社群常客
● Production Project:
○ 彰師大國際處官方網站系統
○ SOKO Glove Configurator
○ Mr.Tanaka 田中先生鄉村民宿官網
● Github:github.com/tz5514
About me
REACT.JS ?4
VDOM?
Component?
JSX?
One-way Dataflow?
1.
從零開始認識
REACT.JS
5
”6
React是一個 JavaScript 函式庫,
用來處理前端 UI 的產生與管理。
為何 REACT 要誕生
▹ 前端 UI 的開發變得越來越複雜
▹ 舊有的開發模式缺乏程式碼的可重用性與可預測性
7
”8
在傳統的前端開發,HTML 只扮演了「定義 UI 最初的基礎 DOM 結構」的角色。
所有在 JavaScript 中進行的 DOM 操作,
都是基於最初定義好的 DOM 再另外堆疊上去的變更,
這讓前端程式碼的執行結果變得難以預測與維護。
9
HTML ? DOM ?
▹ HTML 是一種方便開發者撰寫的語言,只是純文字
▹ DOM 是瀏覽器渲染引擎中真正存在的物件節點
▹ 頁面初始化時,渲染引擎會依照 HTML 的內容產生出 DOM
10
11
12
▹ React 本身並不是一個完整的前端框架,只是一個函式庫
▹ React 本身只處理 View 的部份,也就是 HTML 的 DOM
▹ React 是一個中間媒介,連結了 UI 純粹的定義層面與 DOM的實際層面
▹ 基本上,React本身只做以下兩件工作;
▸ 讓你定義 UI 要長怎樣
▸ 幫你把這個 UI 印出來到使用者的瀏覽器畫面上
僅僅是 UI
”13
React 捨棄了傳統的 HTML 開發方式,
改成完全由 JavaScript 來代管 DOM 的產生與操作,
實現 100% 純粹的 Client-Side Rendering。
聲明式的定義前端 UI14
▹ 前端 UI 程式碼本身,應該要足以完整的自我表達其擁有的行為與可能的顯
示變化
▹ UI 渲染無法避免邏輯,將 UI 的定義直接在 JavaScript 中進行,有助於提高 UI
的自我表達能力
15 JSX
▹ JSX 是 React 在使用的一種特殊 JavaScript 語法,看起來像是在 JavaScript
程式碼中直接寫 HTML
▹ 能幫助開發 React 應用,因可讀性高、很類似 HTML
▹ 重要的語法差異:class → className
▹ 瀏覽器看不懂,需要翻譯成原生的 JS 程式碼才能正常的在瀏覽器上執行
▹ 通常使用 Babel 來進行翻譯的工作
Component16
▹ 以 Component 的形式來表
達與拼裝 UI ,能夠讓前端
UI 程式碼有更好的可組合
性與可重用性
Component17
18
Virtual DOM
開發者在思考處理 UI 變動的流程時,
「這個 UI 會應該會有什麼變化」與
「要用什麼手段來讓 UI 達到這個變化」
是兩回事。
”19
DOM is Slow.
Really Fxxking Slow.
所以我們提供了 Virtual DOM 來當作預先的彩排場地
20 Virtual DOM
▹ Virtual DOM 是一份純資料的 Tree 物件,對應到實際的 DOM
▹ Virtual DOM 為自定義 Component 提供了中介的虛擬層,讓開發者能描述 UI 樣
貌與邏輯
▹ 我們透過定義 Component 來表達「UI 什麼情況該如何呈現」。而「要用什麼手
段來達到這個畫面改變(如何操作 DOM)」 ,React 則會自動幫你做,而且絕大
多數情況下都比你自己來要做的更好
21
Always Redraw
F5,就對了。
”22
When something go wrong.
23 Always Redraw
▹ Single Source of Truth
▸ UI 要長得如何,應當是取決於當時的 Model 資料以及 UI 狀態而決定
▹ 把畫面全部洗掉重新再畫,顯示結果通常一定是正確的
▹ 每次都重繪全部的實體 DOM 顯然是不可行,但是重繪 VDOM 則相對高效許多
24 Always Redraw
”25
當畫面需要改變時,根據最新的 UI 狀態重繪出新的 VDOM Tree
並與改變前的舊 VDOM Tree 進行全面式的比較與計算
其中新舊差異的地方,才真的會在實際的 DOM 上發生操作改變
Flux & One-way dataflow26
27 Props
▹ Component 外部(父 Component)傳遞給 Component 內部的靜態參數
▹ 抽象化出跟問題有關的參數,方便 Component 進行重用
▹ Props 傳遞到 Component 內部後,應是不可變更的固定值
▹ 當 Component 外部改變傳遞進來的 Props 時,Component 內部會自動發起重繪
28 Props
29 State
▹ Component 內部私有的動態狀態值
▹ 在內部使用 this.setState 方法進行修改
▹ 在內部調用修改後,Component 會自動發起畫面重繪
30 State
31
Component Lifecycle
2.
REACT.JS
生態系與發展
32
REACT 的開源生態系
React 之所以發展到如此強大的狀態,跟其活躍而開放的週
邊生態系有密不可分的關聯
33
Redux34
▹ Single Store
▹ 簡化 Flux 流程
React Router35
▹ Front-End Routing,
幫助解決 SPA 的路
由問題
Isomorphic36
▹ Why
▸ React 是百分之百的 Client-Side Rendering
▸ Client-Side Rendering 有 SEO 問題
▸ 初次載入頁面時速度不理想
Isomorphic37
▹ How
▸ Isomorphic 是指前後端執行同一份程式碼來 Render View
▸ 後端必須使用 Node.js(才能夠運行 React)
▸ 使用 ReactDOMServer.renderToString 方法
▹ Example with Redux
▸ https://github.com/erikras/react-redux-universal-hot-example
React Native38
▹ React 利用 VDOM 實現了 UI 邏輯以
及 HTML DOM 之間中介的虛擬層
▹ Facebook 希望 React 能對應的實際
層不僅止於 Web,而實作出了對
應 Android & iOS 原生元件的實際
層,並進行部份的元件共用
▹ 大幅降低兩大行動平台之間的開
發成本
Why React is so awesome?39
▹ 組件化的設計
▹ 聲明式風格
▹ 單向資料流
▹ Isomorphic 讓 Server-Side Rendering 變成可能
▹ React Native 統一行動裝置平台開發
▹ 在普遍的情境下效能表現不錯
React 的罩門40
▹ React 本身學習門檻不高,但環境建置困難,且其生態系複雜,導致剛開始學
習時容易混亂無頭緒
▹ 不易於進行細微的 DOM 操作
▹ React 的效能瓶頸
▸ Tree 節點過多過深時,遍歷所有節點的效能成本很高
▸ 實作 shouldComponentUpdate 來減少不需要的遍歷
你應該如何學習 React41
▹ 必修
▸ React 本身
▸ NPM & Module System
▸ JS 打包工具:Webpack
▸ Routing:React Router
▸ Flux:Redux
▹ 選修
▸ ES6
▸ Isomorphic
▸ React Native
▸ Inline-style CSS
▸ Immutable.js
React 與 Angular 的比較42
React Angular 1.x
性質 Library Framework
Dataflow One-way dataflow Two-way binding
Template
HTML in JS
(JSX)
JS in HTML
管理 Model 與 DOM 之
間的對應
Virtual DOM Dirty Checking
Isomorphic Yes No
學習曲線 平滑 陡峭
3.
建立 REACT.JS
開發環境
43
44
React 的開發環境需求
▹ JSX
▹ ES6 to ES5
▹ HMR(Hot Module Replacement)
45
React 常見的開發環境方案
▹ In-Browser Compile(Babel 6 之後不支援)
▹ Online Playgrond
▹ Module Bundler(Webpack、Browserify、Gulp)
46
● Wepack 是一個前端模組的整合與打包工具
○ 同時支援 AMD、CommonJS、ES6 Module 等模組規範
○ 可以自由的配置打包出多個 output JS 檔案
○ 高效能的 Bundle 速度
○ 整合樣式表(CSS/SCSS/LESS 等)
○ 能夠處理圖片以及字型檔
○ 豐富的額外插件
Webpack
47 安裝 Webpack
● npm install webpack -g
48 Demo Repo
▹ https://goo.gl/GjWZbu
▹ npm install
▸ Run
⬩ npm run dev
⬩ npm run build
▸ Webpack
▸ Babel
▸ HMR
▸ React 15.0.1
▸ React-Router
▸ SASS
▸ Bootstrap
49
● Wepack 的設定檔,我們將運行的配置寫在這段程式碼中,然後 webpack 執
行時就會按照該配置來進行 bundle 的動作並產出靜態檔案。
● 可以自行命名,運行 Webpack 時指定設定檔名稱即可
● 通常會將開發用以及 production 用的設定分開寫
○ webpack.config.dev.js
○ webpack.config.prod.js
webpack.config.js
50
● 通常我們寫 React Project 都是 Single Page Application,因此只需要
把全部程式碼 Bundle 成一個個體就好
entry
51 output
● path:Bundle 出的個體靜態檔案存放的位置
● publicPath:CSS 中引入 URL 時參考的路徑
● filename:Bundle 出的個體靜態檔案的名稱
52 resolve
● root
○ require 時路徑省略
● extensions
○ require 時副檔名省略
53
module - loader
54 devtool
● 產生 JavaScript檔案的 Source map,以便開發時 Debug
55 plugins
56 index.html
Thank you
for
listening !
57

More Related Content

What's hot

ASP.NET Core 6.0 全新功能探索
ASP.NET Core 6.0 全新功能探索ASP.NET Core 6.0 全新功能探索
ASP.NET Core 6.0 全新功能探索Will Huang
 
保哥線上講堂:利用 StyleCop 撰寫一致的 C# 程式碼風格
保哥線上講堂:利用 StyleCop 撰寫一致的 C# 程式碼風格保哥線上講堂:利用 StyleCop 撰寫一致的 C# 程式碼風格
保哥線上講堂:利用 StyleCop 撰寫一致的 C# 程式碼風格Will Huang
 
使用 C#/Razor 開發互動式 WebAssembly 網站 (Modern Web 2018)
使用 C#/Razor 開發互動式 WebAssembly 網站 (Modern Web 2018)使用 C#/Razor 開發互動式 WebAssembly 網站 (Modern Web 2018)
使用 C#/Razor 開發互動式 WebAssembly 網站 (Modern Web 2018)Will Huang
 
開發人員不可不知的 Windows Container 容器技術預覽
開發人員不可不知的 Windows Container 容器技術預覽開發人員不可不知的 Windows Container 容器技術預覽
開發人員不可不知的 Windows Container 容器技術預覽Will Huang
 
极速 Angular 开发:效能调校技巧 (ngChina 2019)
极速 Angular 开发:效能调校技巧 (ngChina 2019)极速 Angular 开发:效能调校技巧 (ngChina 2019)
极速 Angular 开发:效能调校技巧 (ngChina 2019)Will Huang
 
實現 Angular, Docker 與 Kubernetes 持續部署 (NG+2020)
實現 Angular, Docker 與 Kubernetes 持續部署 (NG+2020)實現 Angular, Docker 與 Kubernetes 持續部署 (NG+2020)
實現 Angular, Docker 與 Kubernetes 持續部署 (NG+2020)Will Huang
 
Angular 4 網站開發最佳實務 (Modern Web 2017)
Angular 4 網站開發最佳實務 (Modern Web 2017)Angular 4 網站開發最佳實務 (Modern Web 2017)
Angular 4 網站開發最佳實務 (Modern Web 2017)Will Huang
 
SQL Server 資料庫版本控管
SQL Server 資料庫版本控管SQL Server 資料庫版本控管
SQL Server 資料庫版本控管Will Huang
 
使用 Visual Studio Code 建構 JavaScript 應用程式
使用 Visual Studio Code 建構 JavaScript 應用程式使用 Visual Studio Code 建構 JavaScript 應用程式
使用 Visual Studio Code 建構 JavaScript 應用程式Will Huang
 
Node.js從無到有 基本課程
Node.js從無到有 基本課程Node.js從無到有 基本課程
Node.js從無到有 基本課程Simon Su
 
Angular 5 全新功能探索 @ JSDC2017
Angular 5 全新功能探索 @ JSDC2017Angular 5 全新功能探索 @ JSDC2017
Angular 5 全新功能探索 @ JSDC2017Will Huang
 
進擊的前端工程師:今天就用 JSON Server 自己打造 API 吧!
進擊的前端工程師:今天就用 JSON Server 自己打造 API 吧!進擊的前端工程師:今天就用 JSON Server 自己打造 API 吧!
進擊的前端工程師:今天就用 JSON Server 自己打造 API 吧!Will Huang
 
Angular 7 全新功能探索 (Angular Taiwan 2018)
Angular 7 全新功能探索 (Angular Taiwan 2018)Angular 7 全新功能探索 (Angular Taiwan 2018)
Angular 7 全新功能探索 (Angular Taiwan 2018)Will Huang
 
使用 ASP.NET 5 實戰開發雲端應用程式
使用 ASP.NET 5 實戰開發雲端應用程式使用 ASP.NET 5 實戰開發雲端應用程式
使用 ASP.NET 5 實戰開發雲端應用程式Will Huang
 
Npm 套件管理 & 常用開發工具介紹
Npm 套件管理 & 常用開發工具介紹Npm 套件管理 & 常用開發工具介紹
Npm 套件管理 & 常用開發工具介紹wantingj
 
AKS 與開發人員體驗 (Kubernetes 大講堂)
AKS 與開發人員體驗 (Kubernetes 大講堂)AKS 與開發人員體驗 (Kubernetes 大講堂)
AKS 與開發人員體驗 (Kubernetes 大講堂)Will Huang
 
ASP.NET 5 的創新與變革
ASP.NET 5 的創新與變革ASP.NET 5 的創新與變革
ASP.NET 5 的創新與變革Will Huang
 
Frontend Devops at Cloudinsight
Frontend Devops at CloudinsightFrontend Devops at Cloudinsight
Frontend Devops at CloudinsightYan Wang
 
Azure Web App on Linux @ Global Azure Bootcamp 2017 Taiwan
Azure Web App on Linux @ Global Azure Bootcamp 2017 TaiwanAzure Web App on Linux @ Global Azure Bootcamp 2017 Taiwan
Azure Web App on Linux @ Global Azure Bootcamp 2017 TaiwanWill Huang
 
AngularJS training in Luster
AngularJS training in LusterAngularJS training in Luster
AngularJS training in LusterJason Chung
 

What's hot (20)

ASP.NET Core 6.0 全新功能探索
ASP.NET Core 6.0 全新功能探索ASP.NET Core 6.0 全新功能探索
ASP.NET Core 6.0 全新功能探索
 
保哥線上講堂:利用 StyleCop 撰寫一致的 C# 程式碼風格
保哥線上講堂:利用 StyleCop 撰寫一致的 C# 程式碼風格保哥線上講堂:利用 StyleCop 撰寫一致的 C# 程式碼風格
保哥線上講堂:利用 StyleCop 撰寫一致的 C# 程式碼風格
 
使用 C#/Razor 開發互動式 WebAssembly 網站 (Modern Web 2018)
使用 C#/Razor 開發互動式 WebAssembly 網站 (Modern Web 2018)使用 C#/Razor 開發互動式 WebAssembly 網站 (Modern Web 2018)
使用 C#/Razor 開發互動式 WebAssembly 網站 (Modern Web 2018)
 
開發人員不可不知的 Windows Container 容器技術預覽
開發人員不可不知的 Windows Container 容器技術預覽開發人員不可不知的 Windows Container 容器技術預覽
開發人員不可不知的 Windows Container 容器技術預覽
 
极速 Angular 开发:效能调校技巧 (ngChina 2019)
极速 Angular 开发:效能调校技巧 (ngChina 2019)极速 Angular 开发:效能调校技巧 (ngChina 2019)
极速 Angular 开发:效能调校技巧 (ngChina 2019)
 
實現 Angular, Docker 與 Kubernetes 持續部署 (NG+2020)
實現 Angular, Docker 與 Kubernetes 持續部署 (NG+2020)實現 Angular, Docker 與 Kubernetes 持續部署 (NG+2020)
實現 Angular, Docker 與 Kubernetes 持續部署 (NG+2020)
 
Angular 4 網站開發最佳實務 (Modern Web 2017)
Angular 4 網站開發最佳實務 (Modern Web 2017)Angular 4 網站開發最佳實務 (Modern Web 2017)
Angular 4 網站開發最佳實務 (Modern Web 2017)
 
SQL Server 資料庫版本控管
SQL Server 資料庫版本控管SQL Server 資料庫版本控管
SQL Server 資料庫版本控管
 
使用 Visual Studio Code 建構 JavaScript 應用程式
使用 Visual Studio Code 建構 JavaScript 應用程式使用 Visual Studio Code 建構 JavaScript 應用程式
使用 Visual Studio Code 建構 JavaScript 應用程式
 
Node.js從無到有 基本課程
Node.js從無到有 基本課程Node.js從無到有 基本課程
Node.js從無到有 基本課程
 
Angular 5 全新功能探索 @ JSDC2017
Angular 5 全新功能探索 @ JSDC2017Angular 5 全新功能探索 @ JSDC2017
Angular 5 全新功能探索 @ JSDC2017
 
進擊的前端工程師:今天就用 JSON Server 自己打造 API 吧!
進擊的前端工程師:今天就用 JSON Server 自己打造 API 吧!進擊的前端工程師:今天就用 JSON Server 自己打造 API 吧!
進擊的前端工程師:今天就用 JSON Server 自己打造 API 吧!
 
Angular 7 全新功能探索 (Angular Taiwan 2018)
Angular 7 全新功能探索 (Angular Taiwan 2018)Angular 7 全新功能探索 (Angular Taiwan 2018)
Angular 7 全新功能探索 (Angular Taiwan 2018)
 
使用 ASP.NET 5 實戰開發雲端應用程式
使用 ASP.NET 5 實戰開發雲端應用程式使用 ASP.NET 5 實戰開發雲端應用程式
使用 ASP.NET 5 實戰開發雲端應用程式
 
Npm 套件管理 & 常用開發工具介紹
Npm 套件管理 & 常用開發工具介紹Npm 套件管理 & 常用開發工具介紹
Npm 套件管理 & 常用開發工具介紹
 
AKS 與開發人員體驗 (Kubernetes 大講堂)
AKS 與開發人員體驗 (Kubernetes 大講堂)AKS 與開發人員體驗 (Kubernetes 大講堂)
AKS 與開發人員體驗 (Kubernetes 大講堂)
 
ASP.NET 5 的創新與變革
ASP.NET 5 的創新與變革ASP.NET 5 的創新與變革
ASP.NET 5 的創新與變革
 
Frontend Devops at Cloudinsight
Frontend Devops at CloudinsightFrontend Devops at Cloudinsight
Frontend Devops at Cloudinsight
 
Azure Web App on Linux @ Global Azure Bootcamp 2017 Taiwan
Azure Web App on Linux @ Global Azure Bootcamp 2017 TaiwanAzure Web App on Linux @ Global Azure Bootcamp 2017 Taiwan
Azure Web App on Linux @ Global Azure Bootcamp 2017 Taiwan
 
AngularJS training in Luster
AngularJS training in LusterAngularJS training in Luster
AngularJS training in Luster
 

Similar to React.js what do you really mean?

高雄前端上課簡報 #29
高雄前端上課簡報 #29高雄前端上課簡報 #29
高雄前端上課簡報 #29reactmaker9527
 
HTML5 实战 WebApp 阅读应用– Shiu
HTML5 实战 WebApp 阅读应用– ShiuHTML5 实战 WebApp 阅读应用– Shiu
HTML5 实战 WebApp 阅读应用– ShiuJingchao Di
 
使用Javascript及HTML5打造協同運作系統
使用Javascript及HTML5打造協同運作系統使用Javascript及HTML5打造協同運作系統
使用Javascript及HTML5打造協同運作系統Hsu Ping Feng
 
[2018 .NET Conf].NET Core與Azure DevOps應用於企業開發
[2018 .NET Conf].NET Core與Azure DevOps應用於企業開發[2018 .NET Conf].NET Core與Azure DevOps應用於企業開發
[2018 .NET Conf].NET Core與Azure DevOps應用於企業開發Edward Kuo
 
React Native & V2HOT
React Native & V2HOTReact Native & V2HOT
React Native & V2HOTXcat Liu
 
如何與全世界分享你的 Library
如何與全世界分享你的 Library如何與全世界分享你的 Library
如何與全世界分享你的 LibraryMu Chun Wang
 
JSDC 2015 React-Native 實戰
JSDC 2015 React-Native 實戰JSDC 2015 React-Native 實戰
JSDC 2015 React-Native 實戰Sam Lee
 
介紹前端 Web 技術在跨平台開發上的應用
介紹前端 Web 技術在跨平台開發上的應用介紹前端 Web 技術在跨平台開發上的應用
介紹前端 Web 技術在跨平台開發上的應用Jerry Lin
 
Csdn Java电子杂志第1期
Csdn Java电子杂志第1期Csdn Java电子杂志第1期
Csdn Java电子杂志第1期yiditushe
 
Java Web框架汇总
Java Web框架汇总Java Web框架汇总
Java Web框架汇总yiditushe
 
Insider Dev Tour - Taipei Productive and Fun Web Development with NodeJS and ...
Insider Dev Tour - Taipei Productive and Fun Web Development with NodeJS and ...Insider Dev Tour - Taipei Productive and Fun Web Development with NodeJS and ...
Insider Dev Tour - Taipei Productive and Fun Web Development with NodeJS and ...jasonzheng50
 
AtticTV and NodeJS
AtticTV and NodeJSAtticTV and NodeJS
AtticTV and NodeJSGrey Ang
 
twMVC#42 讓我們用一種方式來開發吧
twMVC#42 讓我們用一種方式來開發吧twMVC#42 讓我們用一種方式來開發吧
twMVC#42 讓我們用一種方式來開發吧twMVC
 
Asp.net mvc 從無到有 -twMVC#2
Asp.net mvc 從無到有 -twMVC#2Asp.net mvc 從無到有 -twMVC#2
Asp.net mvc 從無到有 -twMVC#2twMVC
 
twMVC#02 | ASP.NET MVC 從無到有
twMVC#02 | ASP.NET MVC 從無到有twMVC#02 | ASP.NET MVC 從無到有
twMVC#02 | ASP.NET MVC 從無到有twMVC
 
July.2011.w3ctech
July.2011.w3ctechJuly.2011.w3ctech
July.2011.w3ctechKai Cui
 
Web爬虫那点事
Web爬虫那点事Web爬虫那点事
Web爬虫那点事Yihua Huang
 
ReactMaker start kit intro
ReactMaker start kit introReactMaker start kit intro
ReactMaker start kit intro昇倫 蔡
 
ReactMaker - state 製作購物車範例
ReactMaker - state 製作購物車範例ReactMaker - state 製作購物車範例
ReactMaker - state 製作購物車範例昇倫 蔡
 

Similar to React.js what do you really mean? (20)

高雄前端上課簡報 #29
高雄前端上課簡報 #29高雄前端上課簡報 #29
高雄前端上課簡報 #29
 
HTML5 实战 WebApp 阅读应用– Shiu
HTML5 实战 WebApp 阅读应用– ShiuHTML5 实战 WebApp 阅读应用– Shiu
HTML5 实战 WebApp 阅读应用– Shiu
 
使用Javascript及HTML5打造協同運作系統
使用Javascript及HTML5打造協同運作系統使用Javascript及HTML5打造協同運作系統
使用Javascript及HTML5打造協同運作系統
 
[2018 .NET Conf].NET Core與Azure DevOps應用於企業開發
[2018 .NET Conf].NET Core與Azure DevOps應用於企業開發[2018 .NET Conf].NET Core與Azure DevOps應用於企業開發
[2018 .NET Conf].NET Core與Azure DevOps應用於企業開發
 
React Native & V2HOT
React Native & V2HOTReact Native & V2HOT
React Native & V2HOT
 
如何與全世界分享你的 Library
如何與全世界分享你的 Library如何與全世界分享你的 Library
如何與全世界分享你的 Library
 
JSDC 2015 React-Native 實戰
JSDC 2015 React-Native 實戰JSDC 2015 React-Native 實戰
JSDC 2015 React-Native 實戰
 
介紹前端 Web 技術在跨平台開發上的應用
介紹前端 Web 技術在跨平台開發上的應用介紹前端 Web 技術在跨平台開發上的應用
介紹前端 Web 技術在跨平台開發上的應用
 
Csdn Java电子杂志第1期
Csdn Java电子杂志第1期Csdn Java电子杂志第1期
Csdn Java电子杂志第1期
 
Java Web框架汇总
Java Web框架汇总Java Web框架汇总
Java Web框架汇总
 
Insider Dev Tour - Taipei Productive and Fun Web Development with NodeJS and ...
Insider Dev Tour - Taipei Productive and Fun Web Development with NodeJS and ...Insider Dev Tour - Taipei Productive and Fun Web Development with NodeJS and ...
Insider Dev Tour - Taipei Productive and Fun Web Development with NodeJS and ...
 
SCJP ch01
SCJP ch01SCJP ch01
SCJP ch01
 
AtticTV and NodeJS
AtticTV and NodeJSAtticTV and NodeJS
AtticTV and NodeJS
 
twMVC#42 讓我們用一種方式來開發吧
twMVC#42 讓我們用一種方式來開發吧twMVC#42 讓我們用一種方式來開發吧
twMVC#42 讓我們用一種方式來開發吧
 
Asp.net mvc 從無到有 -twMVC#2
Asp.net mvc 從無到有 -twMVC#2Asp.net mvc 從無到有 -twMVC#2
Asp.net mvc 從無到有 -twMVC#2
 
twMVC#02 | ASP.NET MVC 從無到有
twMVC#02 | ASP.NET MVC 從無到有twMVC#02 | ASP.NET MVC 從無到有
twMVC#02 | ASP.NET MVC 從無到有
 
July.2011.w3ctech
July.2011.w3ctechJuly.2011.w3ctech
July.2011.w3ctech
 
Web爬虫那点事
Web爬虫那点事Web爬虫那点事
Web爬虫那点事
 
ReactMaker start kit intro
ReactMaker start kit introReactMaker start kit intro
ReactMaker start kit intro
 
ReactMaker - state 製作購物車範例
ReactMaker - state 製作購物車範例ReactMaker - state 製作購物車範例
ReactMaker - state 製作購物車範例
 

React.js what do you really mean?