dots. フロントエンドエンジニア部 創立ビアバッシュ & LT会 (2016/11/28) での発表スライドです。 [イベントURL: https://eventdots.jp/event/605542 ]
SlideShare 版はこちら: https://www.slideshare.net/AsialCorp/onsen-ui-2-js
2016/11/28 dots. フロントエンドエンジニア部創⽴ビアバッシュ & LT会0OTFO 6*։ൃʹ͓͚Δ+4ϑϨʔϜϫʔΫিಥࣄྫू 8FC$PNQPOFOUT͍͍ͧΞγΞϧגࣜձࣾ ຢ ঘथ
View Slide
ࣗݾհຢ ঘथʢ [email protected] ʣ• ΤϯδχΞ։ൃϝϯόʢ৽ೖΓʣίϯτϦϏϡʔλॴଐ
ࠓճ͢͜ͱ• 0OTFO 6*ͷ֓ཁ• 0OTFO 6*Λ࡞ΔաఔͰىͬͨ͜ࣄނ• 8FC$PNQPOFOUTͷ͍ಓͱҙ• 7VFKT ʹ͍ͭͯ× ϥΠϒϥϦΛ͏○ ϥΠϒϥϦΛ࡞Δ
ԿΛ࡞ΔաఔͰࣄނ͕ى͖͔ͨ• "OESPJEͱ J04ͷωΠςΟϒͷ 6*Λ)5.-Ͱ࠶ݱ͢Δ 6*ϥΠϒϥϦʢ$446*ϩδοΫʣҎ্͕ւ֎͔Β
ࣄނͷܦҢ ॳͷϥΠϒϥϦઃܭBrowserAngular 1ॳ ಛఆͷϑϨʔϜϫʔΫͷ֦ு ͱ࣮ͯ͠• "OHVMBSϞδϡʔϧͱ࣮ͯ͠ ʢ"OHVMBSΛ֦ுʣΞϓϦ• onsToolbar˞0OTFO 6*࣌ͷݹ͍࣮ͷͰ͢• onsButton• …"OHVMBSσΟϨΫςΟϒ܈
BrowserReactࣄނͷܦҢ ಛఆͷϑϨʔϜϫʔΫʹґଘͨ݁͠Ռʜ⁉BrowserAngular 1• 3FBDU͕രൃతʹීٴ
ࣄނͷܦҢ ಛఆͷϑϨʔϜϫʔΫʹґଘͨ݁͠ՌʜBrowserBrowserAngular 1• 3FBDU͕രൃతʹීٴ• "OHVMBSϞδϡʔϧͷ͍ճ͠ෆՄೳReact
ࣄނͷܦҢ ಛఆͷϑϨʔϜϫʔΫʹґଘͨ݁͠ՌʜBrowserAngular 1• 3FBDU͕രൃతʹීٴ• "OHVMBSϞδϡʔϧͷ͍ճ͠ෆՄೳ• ৽͍͠ϑϨʔϜϫʔΫ༻ͷ࣮Λͦͷ࡞Δ͔ʁˠ ͍ແཧɺࢮ͵BrowserFW FW…☠FWReact
FW…☠ࣄނͷܦҢ ಛఆͷϑϨʔϜϫʔΫʹґଘͨ݁͠ՌʜBrowserAngular 1• 3FBDU͕രൃతʹීٴ• "OHVMBSϞδϡʔϧͷ͍ճ͠ෆՄೳ• ৽͍͠ϑϨʔϜϫʔΫ༻ͷ࣮Λͦͷ࡞Δ͔ʁˠ ͍ແཧɺࢮ͵BrowserFW FWͱ͍͏͜ͱͰReact
BrowserࣄނͷܦҢ ൈ͚ಓʢ8FC$PNQPOFOUTʣͷ׆༻• ෳϑϨʔϜϫʔΫରԠʹ8FC$PNQPOFOUT͕ར༻Մೳ• "OHVMBSͷ '8ʹґଘ͠ͳ͍ ඪ४ ͷϒϥβ "1*ͭ
BrowserࣄނͷܦҢ 8FC$PNQPOFOUTʹΑΔ࠶ར༻ՄೳԽAngular 1• "OHVMBSσΟϨΫςΟϒΛࣺͯɺ$VTUPN&MFNFOUTͰ࠶࣮ഁغϒϥβΛ্ॻ͖ʢΧελϜཁૉΛొʣʢ৽ͨʹ࣮ʣ͜ΕͰͲΜͳϑϨʔϜϫʔΫͰ͑Δ
ୈͷࣄނ 3FBDUͰ͓͏ͱͯ͠Έͨͱ͜ΖBrowser ReactΞϓϦrender() {return (Page 1This is the first page.Push page);}˞ޡͬͨྫ
ୈͷࣄނ 3FBDUͰ͓͏ͱͯ͠Έͨͱ͜ΖBrowser ΞϓϦrender() {return (Page 1This is the first page.Push page);}$VTUPN&MFNFOUTͰ%0.ཁૉͷϓϩύςΟʹίϯϙʔωϯτϝιουΛඥ͚ͮΔɻ͔͠͠ 3FBDUͰ%0.ཁૉʹΞΫηεͰ͖ͳ͍˞ޡͬͨྫReact
ୈͷࣄނ 3FBDUͰ͓͏ͱͯ͠Έͨͱ͜ΖBrowser ΞϓϦ• ͔ͬͨ͜ͱ• 7JSUVBM%0.ͷෳࡶͳػೳΛੵΜͩ '8ͰϑϨʔϜϫʔΫόΠϯσΟϯά ͷ༻ҙ͕ඞཁͳ߹͕͋Δ3FBDUόΠϯσΟϯά%0.ཁૉΛΘΓʹୟ͍ͯ͘ΕΔ3FBDUίϯϙʔωϯτ܈ʢ/BWJHBUPS 5PPMCBS #VUUPOʜʣΞϓϦ͜ΕΛͬͯॻ͘render() {return (renderPage={this.renderPage} />);}ਖ਼͍͠ྫReact,OPDLPVUKT ʹෆཁ
ୈͷࣄނ "OHVMBSͰ͓͏ͱͯ͠Έͨͱ͜ΖBrowser Angular 2ΞϓϦ @Component({selector: 'ons-page[main]',template: require('./main-page.html'),styles: [require('./main-page.css')]})export class MainPage implements OnInit {constructor(private navi: OnsNavigator) {}ngOnInit() {// ৭ʑॲཧ}}ʢΉΛಘͣʣ࠾༻༷ͨ͠"OHVMBSίϯϙʔωϯτʢ㱠ଐੑσΟϨΫςΟϒʣͰPOTQBHFཁૉΛ֦ுͯ͠ 41"ϖʔδΛఆٛਖ਼͍͠ྫ"OHVMBSόΠϯσΟϯά
ୈͷࣄނ "OHVMBSͰ͓͏ͱͯ͠Έͨͱ͜ΖBrowser Angular 2ΞϓϦ @Component({selector: 'ons-page[main]',template: require('./main-page.html'),styles: [require('./main-page.css')]})export class MainPage implements OnInit {constructor(private navi: OnsNavigator) {}ngOnInit() {// ৭ʑॲཧ}}ਖ਼͍͠ྫOH0O*OJU ͕ૣ͗͢ $VTUPN&MFNFOUTଆͰͷॲཧΑΓઌʹ OH0O*OJU ͕ಈ͍ͯ͠·͏ʢΉΛಘͣʣ࠾༻༷ͨ͠"OHVMBSίϯϙʔωϯτʢ㱠ଐੑσΟϨΫςΟϒʣͰPOTQBHFཁૉΛ֦ுͯ͠ 41"ϖʔδΛఆٛ"OHVMBSόΠϯσΟϯά
ୈͷࣄނ "OHVMBSͰ͓͏ͱͯ͠Έͨͱ͜ΖBrowser Angular 2ΞϓϦ @Component({selector: 'ons-page[main]',template: require('./main-page.html'),styles: [require('./main-page.css')]})export class MainPage implements OnInit {constructor(private navi: OnsNavigator) {}ngOnInit() {// ৭ʑॲཧ}}ਖ਼͍͠ྫOH0O*OJU ͕ૣ͗͢ $VTUPN&MFNFOUTଆͰͷॲཧΑΓઌʹ OH0O*OJU ͕ಈ͍ͯ͠·͏•͔ͬͨ͜ͱ• $VTUPN&MFNFOUTͱ +4ϑϨʔϜϫʔΫͱͷؒͰίϯϙʔωϯτϥΠϑαΠΫϧ͕িಥ͢Δ߹͕͋Δ
·ͱΊ8FC$PNQPOFOUTʢ͖݅Ͱʣ͍͍ͧ• 8FC$PNQPOFOUTΛ͏ͱෳϑϨʔϜϫʔΫରԠ͕Ͱ͖Δ• ៉ྷʹ͍͔ͣɺϑϨʔϜϫʔΫόΠϯσΟϯάͷ༻ҙίϯϙʔωϯτϥΠϑαΠΫϧͷিಥͷରॲ͕ඞཁʹͳΔʢ͜ͱ͋Δʣ• ͔͠͠όΠϯσΟϯάΛͪΐͬͱॻ͚ͩ͘Ͱ৽ϑϨʔϜϫʔΫʹରԠͰ͖ΔͷͰɺಓ۩ͱͯ͠ ͱͯྑ͍
ͳΜ͔͖ͨ
ͳΜ͔͖ͨVue.js
7VFKT• όʔδϣϯͷࠂΛ͖͔͚ͬʹരൃతʹ (JU)VCTUBSΛ৳͍ͯ͠ΔϑϨʔϜϫʔΫग़యhttp://www.timqian.com/star-history/
0OTFO 6*༻ 7VFKT όΠϯσΟϯάBrowser Vue.js 2ΞϓϦ7VFKT όΠϯσΟϯά•ۙϦϦʔε͠·͢• 8FC$PNQPOFOUTͰ࣮͓͍͓͔ͯͨ͛͠Ͱׂͱ͙͢ʹରԠͰ͖·ͨ͠
0OTFO 6*༻ 7VFKT όΠϯσΟϯάBrowser Vue.js 2ΞϓϦ7VFKT όΠϯσΟϯά•ۙϦϦʔε͠·͢• 8FC$PNQPOFOUTͰ࣮͓͍͓͔ͯͨ͛͠Ͱׂͱ͙͢ʹରԠͰ͖·ͨ͠Thank you for listening!既にOnsen UI を使っている⽅は是⾮ GitHub スターを〜!https://github.com/OnsenUI/OnsenUIリリースは Twitter で告知しますhttps://twitter.com/Onsen_UI_ja