Upgrade to Pro — share decks privately, control downloads, hide ads and more …

class-component.js

 class-component.js

R-Tech 社内勉強会用資料
class-component.js のコードレビュー用の紹介資料

https://github.com/kt3k/class-component

Avatar for Yoshiya Hinosawa

Yoshiya Hinosawa

June 13, 2016

More Decks by Yoshiya Hinosawa

Other Decks in Programming

Transcript

  1. ܦྺ  খ͞ͳ8FC੍࡞ձࣾ" ೥   খ͞ͳ8FC੍࡞ձࣾ# ೥  

     ೥   ϑϦʔϥϯε ̎೥ 
 

  2. "1*

  3. 4UBUJD"1*   DDؔ਺ w DD ίϯϙʔωϯτ໊ ࣮૷Ϋϥε Ͱొ࿥ w

    EJWDMBTTlΫϥεΫϥεʜzEJWͱ͍͏ λά͕͋ͬͨͱ͖ʹɺΫϥε/ͷதͰίϯϙʔ ωϯτొ࿥͞Εͨ΋ͷ͕͋Δ࣌ɺࣗಈతʹ࣮૷ Ϋϥεͱඥ෇͍ͨঢ়ଶͰॳظԽ͞ΕΔ λά͸ͳΜ Ͱ΋ྑ͍
  4. *OTUBODF"1*T GODDʹఆٛ͞ΕΔ΋ͷ  EPNDD ίϯϙʔωϯτ໊ EPNΛಈతʹDD ʹ͢Δ ໭Γ஋͸EPNࣗ਎  

    EPNDDHFU ίϯϙʔωϯτ໊ EPN͔ΒDD Λऔಘ͢Δ ແ͍৔߹͸UISPX   EPNDDJOJU ίϯϙʔωϯτ໊ EPNΛಈత ʹDDʹ͢Δ ໭Γ஋͸DPFMFNFOU
  5. EFDPSBUPST w !PO Πϕϯτ໊  w ϝιουΛΠϕϯτϋϯυϥͱͯ͠ొ࿥ w !PO Πϕϯτ໊

    BU ηϨΫλ  w ϝιουΛηϨΫλͰߜͬͨΠϕϯτϋϯυ ϥͱͯ͠ొ࿥
  6. EFDPSBUPST ྫ class Foo {
 @on(‘click’).at(‘.btn’)
 onClick(e) {
 // .btn

    ΫϦοΫ࣌ͷॲཧ
 }
 } <div class=“foo”>
 <button class=“btn”>Click!</btn>
 </div>
  7. EFDPSBUPST w !FNJU Πϕϯτ໊ pSTU w ϝιουͷ࠷ॳʹΠϕϯτͷτϦΨʔΛ௥Ճ w !FNJU Πϕϯτ໊

    MBTU w ϝιουͷ࠷ޙʹΠϕϯτͷτϦΨʔΛ௥Ճ w QSPNJTFΛฦͨ͠৔߹͸SFTPMWFޙʹτϦΨ
  8. EFDPSBUPST ྫ class Foo {
 @emit(‘foo-update’).last
 start() {
 return new

    Promise(resolve => {
 // ͜͜ͷॲཧ͕ resolve ͞Εͨ࣌ʹ
 // foo-update Πϕϯτ͕ emit ͞ΕΔ
 })
 }
 }
  9. ςετπʔϧ w LBSNB ϒϥ΢βϥϯφʔ  w NPDIB ςετϥϯφʔ  w

    DIBJQPXFSBTTFSU Ξαʔγϣϯ  w ϞοΫϑϨʔϜϫʔΫ͸ඞཁͳ͔ͬͨͷͰ࢖͍ͬͯ·ͤΜɻ
  10. $*πʔϧ w DJSDMFDJ ςετͷ࣮ߦ  w DPEFDPW ΧόϨοδ෼ੳ  w

    CJUIPVOE ίʔυ඼࣭෼ੳ  w HSFFOLFFQFS ґଘੑอक  w ˢݸਓతʹࠓ+4Ͱ044Λॻ্͘Ͱϕετͱ ࢥ͍ͬͯΔߏ੒