ããã«ã¡ã¯ã
æè¿ãã£ããå¯ããªã£ã¦ãã¦å¸å£ãæããå£ç¯ã«ãªã£ã¦ãã¾ãããã
çããã¯ããããéããã§ããããã
ãã¦ããã®åº¦BASEæ ªå¼ä¼ç¤¾ã¯2023/10/28(å)ã«éå¬ããã Vue Fes Japan 2023 ã«ã·ã«ãã¼ã¹ãã³ãµã¼ã¨ãã¦åè³ããã¦ããã ãã¾ããã
ä»åã¯åå ã¬ãã¼ãã¨ãã¦ä¼å ´ã®æ§åãã»ãã·ã§ã³ã®ææ³ã«ã¤ãã¦ãå±ããã¾ãã
Vue Fes Japan 2023ã¨ã¯
Vue Fes Japan 㯠2018 å¹´ã«èªçããæ¥æ¬æ大ç´ã® Vue.js ã«ã³ãã¡ã¬ã³ã¹ã§ãã
ä»å¹´ã¯4å¹´ã¶ãã¨ãªããªãã©ã¤ã³éå¬ã¨ãªããå½æ¥ã®ã»ãã·ã§ã³ã¯ç«ã¡è¦ãåºãã»ã©çãä¸ãã£ã¦ãã¾ããã
ä»å¹´ã¯ã²ã¹ãã¹ãã¼ã«ã¼ã¨ãã¦Vue.js/Viteã®ä½è ã§ããEvan Youæ°ãVueã¨ã³ã·ã¹ãã ã®ã³ã¢ã¡ã³ãã¼ã®æ¹ãæ¥æ¥ãããã¼ãã¼ããã»ãã·ã§ã³ãè¡ã£ã¦ãã¾ããã Vue.jsã®ãããããã¨ã³ã·ã¹ãã ã«é¢ããçºè¡¨ãå¤ãã£ãå°è±¡ã§ã大å¤èå³æ·±ãè´ããã¦ããã ãã¾ããã
ãªãã©ã¤ã³ä¼å ´ã®æ§å
BASEã®ãã¼ã¹ã§ã¯Vue.jsã«é¢ããã¢ã³ã±ã¼ããå®æ½ããçãã¦ããã ããæ¹ã«BASEã®ã·ã§ããã§è²©å£²ããã¦ããã³ã¼ãã¼ããã¬ã¼ã³ãããã¦ããã ãã¾ããã
ã¢ã³ã±ã¼ãã®æçµçµæã¯ä»¥ä¸ã®ããã«ãªãã¾ããã Vue/Nuxtã®ãã¼ã¸ã§ã³ã¯2ç³»ã使ã£ã¦ããæ¹ãã¾ã ã¾ã ããã£ãããå°è±¡ã§ããã³ãã¬ã¼ãã«ã¤ãã¦ã¯ã»ã¼SFCä¸æã®ããã«æãã¾ããã
ã»ãã·ã§ã³ã®ææ³
å½æ¥ã«è´ããã¨ãã§ããã»ãã·ã§ã³ãä¸é¨ãç´¹ä»ãã¾ãã â»å½æ¥ã®ã¡ã¢ããã¨ã«ä½æããã®ã§ãå 容ã«ééããå«ã¾ãã¦ããå¯è½æ§ãããã¾ãããäºæ¿ãã ããã
Keynote: Vue & Vite Updates (by Evan You)
Vue.jsä½è ã®Evan Youæ°ã«ããVue.js/Viteã®ã¢ãããã¼ãã«ã¤ãã¦ã®ã»ãã·ã§ã³ã§ããã Vue3ã®æåã¨ãã¦ãå ¨ã¦ãTypeScriptã§è¨è¿°ã§ãããã¨ãComposition APIãDXã«æè³ã§ãããã¨(ããã¥ã¡ã³ãã®å·æ°, Vite, Volarç)ãæãããã¦ãã¦ãéã«å¤±æãããã¨ã¨ãã¦ã2â3ã§ç ´å£çå¤æ´ãå¤ããã¦ã¨ã³ã·ã¹ãã ãã³ãã¥ããã£ã追ãã¤ãã®ã«æéãããã£ããã¨ãæãããã¦ãã¾ããããã¶ã¤ã³ä¸ã®å¤±æãåçãã大ããªè¬æ¼ã¨ããã°ãNode.jséçºè ã®ã©ã¤ã¢ã³ãã¼ã«ã失æãèªã£ãï¼ããã¦denoãä½ã£ãï¼Design Mistakes in Nodeãæãåºãã人ãå¤ãã¨æãã¾ãã
https://www.youtube.com/watch?v=M3BM9TB-8yA
ä»å¾ã¯ç ´å£çå¤æ´ãä¸åº¦ã«å¤ãå«ããªãããã«ããã¾ãdeprecatedâoptinâremoveã¨ããæµããã¨ã£ã¦ãããã¨ã¨ãVueæ¬ä½ã®CIã«vue-routerãpiniaã®ç¢ºèªãå«ã¾ããããã«ãªããªã©ãã¨ã³ã·ã¹ãã ã大åã«ãã¦ããã¨ãã£ããããã¦ãã¾ããã
Vue.jsããããã¯ãã§ä½¿ç¨ããä¼æ¥ã¨ãã¦ãããã¯ã¨ã¦ããããããã§ããã
社å UIã³ã³ãã¼ãã³ãã©ã¤ãã©ãªãã¨ã³ã¸ãã¢ãã¼ã ã«ãããããæ¬å½ã®ä¾¡å¤ (by å±±æ¬ ä¸å°)
社å ã®ãããã¯ãåãã®UIã³ã³ãã¼ãã³ãã©ã¤ãã©ãªãä½æãUIã®åä¸æ§ãé«ããã ãã§ãªãããã¶ã¤ã³ã«å¯¾ããæèæ¹é©ãã¬ãã¥ã¼ã®éç¨ããã¼ãªã©å¤å²ã«æ¸¡ã£ã¦è¯ãå½±é¿ãèµ·ãããã¨ãã§ãããã¨ããçºè¡¨ã§ããã
æ°ããæ©è½ãä½æããã¨ããä¸è¬çã«ã¯ããã¯ã¨ã³ãã®ã³ã¼ãã¨ä½µãã¦ããã³ãã®ç»é¢ãUIå ¨ã¦ãä¸ã¤ã®Pull Requestã¨ãã¦ã³ã¼ãã¬ãã¥ã¼ãéå§ããããã¨æãã¾ãããæ¬æ ¼çã«æ©è½ã¬ãã¥ã¼ãå§ã¾ãåã«ããã®ã©ã¤ãã©ãªã®ã¿ã§ã®ã³ã¼ãã¬ãã¥ã¼ãæããã¨ã§UIã®å¿ è¦æ§ããã¼ã¸æ§æã®æ¹éããã¶ã¤ã³ã¬ãã¥ã¼ã«è°è«ããã©ã¼ã«ã¹ãããã¨ãã§ããããæ·±ãã¬ãã¥ã¼ãè¡ããã¨ãã§ããã¨ãã£ããããã¦ãã¾ããã
ã¾ãããã®ææ³ã¯ãã¶ã¤ãã¼ã¨ã®åæ¥ãªã©ã§åãçºæ®ããéç¨æ¹æ³ã§ãããã¾ãã
å¥ã®ã»ãã·ã§ã³ã§Vue.jsãå°å
¥ããããã«ã±ã«ããã¶ã¤ãã¼ã¨åæ¥ããããã«é¸æããããã¨ãã話é¡ãæãã¦ããæ¹ãããã£ããã£ãã®ã§ãVue Fesã«ãµããããå
容ã ã£ãã®ã§ã¯ãªãã§ããããã
Vue Language Serverããçã¾ããVolar.jsã¨ããããç§ããå¯è½æ§ (by mizdra)
Volar.jsã¨ããVue.jsããçã¾ããã©ã¤ãã©ãªãVueã®æ ãè¶
ãã¦çºå±ãã¦ãã£ã¦ãããã¨ã«ã¤ãã¦ã®çºè¡¨ã§ããã
Volarã¨ããã°ãVSCodeã§Vue.jsãæ¸ãããã¨ããã人ãªãããªãã®æ¹ããåç¥ã ã¨æãã¾ãããVue.jsã®Language Serverã¨ãã¦ã·ã³ã¿ãã¯ã¹ãã¤ã©ã¤ããã³ã¼ãè£å®ãæä¾ãã¦ãããVSCodeæ¡å¼µã§ãã
Vue.jsã¯ä¸ã¤ã®ãã¡ã¤ã«å
ã«HTML, CSS, JSãæ¸ããä»æ§ã¨ãªã£ã¦ããã®ã§ãVue.jsç¨ã®Language Serverã®éçºã¯å¤§å¤ã§ããã
ã¾ããAstroãSvelteã®ãããªåä¸ãã¡ã¤ã«å
ã§è¤æ°è¨èªãæ¸ããã©ã¤ãã©ãªãåãæ©ã¿ãæ±ãã¦ããããã§ãã
ããã§Volarã®ã³ã¢æ©è½ãVolar.jsã¨ãã¦åãåºãããå°ãªãè¨è¿°ã§é«å質ã»é«æ©è½ãªLanguage Serverãä½ããããã«ãªã£ãããã§ãã
Volarã¯ç¥ã£ã¦ãã¾ããããVolar.jsã¯ãã®ã»ãã·ã§ã³ã§åãã¦ç¥ãã¾ããã
Vue.jsã®æ ãè¶
ãã¦çºå±ãã¦ããã©ã¤ãã©ãªã®åå¨ãç¥ããã¨ãã§ãã¦å¤§å¤åå¼·ã«ãªãã¾ããã
ããã«ãã£ã¹ã«ãã·ã§ã³
Vue.js æ¥æ¬ã¦ã¼ã¶ã¼ã°ã«ã¼ã代表ã®kazuponæ°ãå§ãã¨ãã豪è¯ãªã¡ã³ãã¼ã§Vue.jsã«ã¤ãã¦ã®ããã«ãã£ã¹ã«ãã·ã§ã³ã§ããã Vue.jsãæ¡ç¨ãããã£ãããVue.jsã®ããã¨ãããã¤ãã¤ããªã¨ãããä»å¾ã®Vue.jsã«æå¾ ãããã¨ãªã©èå³æ·±ã話ãè´ããã¨ãã§ãã¾ããã ä¸çªå°è±¡çã ã£ãã®ã¯ãä»å¾ã®Vue.jsã«æå¾ ããããã¨ãã¨ãã話é¡ã§ããViteãVolarã®ããã«Vue.jsã®æ ãè¶ ãã¦ã¨ã³ã·ã¹ãã ãçºå±ãã¦ãã£ã¦ã»ãããããã®è¾ºãããã£ã¨ãã£ã¨ã¢ãã¼ã«ãã¦ãã£ã¦ã»ãããã¨ããçºè¨ããããããã§ãVue.jsã®ã¨ã³ã·ã¹ãã ã®å¼·ããèªããã¦ãã¦ãVueã³ãã¥ããã£ã®è¯ããæ¹ãã¦æãããã¨ãã§ãã¾ããã
Vue.js ã¯ãªããã¯
Vue.js ã«é¢ãã質åãäºååéãããEvan Yuãªã©ã³ããã¿ã¼é£ã«è³ªåã§ããã»ãã·ã§ã³ã§ããã ä¸çªäººæ°ã¯ãreactive vs refã¯ã©ã¡ãã使ãã¹ãããã¨ãã質åã§ã Evan Yuããrefçµ±ä¸ããããããã¨ã墨ä»ã ãããããã¨ããããããã£ãã§ãã å ã ããã¥ã¡ã³ãä¸ã§ã¯reactiveãrefããå ã«ããã¾ããããæè¿refãä¸ã«ããã®ããrefã使ããã¨ããã¡ãã»ã¼ã¸ã¨ã®ãã¨ã reactiveã¯ãã¹ãã©ã¯ãã£ã§ãªã¢ã¯ãã£ããã£ã失ãããããªã©ééããç¯ãããããã¨ãçç±ã®ä¸ã¤ã§ããã reactiveãä»å¾ãªããªããã¨ã¯ãªãã¨ã®ãã¨ã ä¾ãã°ãä¸åã¢ãµã¤ã³ããããã®å¾å¤æ°ãç½®ãæããªãã2ã¤ã®objectã§å ±éã®stateãå¿ ãæ ä¿ããããå¿ ããã®objectãããã¨ããç¶æ ãæ ä¿ãããå ´åãªã©ã§ã¯æç¨ã¨ã®ãã¨ï¼ex, èªè¨¼ã®ã¹ãã¼ã¿ã¹ç®¡çï¼ä»ãã°ã¤ã³ä¸ãã©ããï¼ãªã©ï¼
è¬è¾
åè³ãéãã¦Vue.jsã³ãã¥ããã£ã®ã³ãã¥ããã£ã®çãä¸ããã«è²¢ç®ã§ãããã¨ã大å¤å¬ããæã£ã¦ãã¾ãã ã«ã³ãã¡ã¬ã³ã¹å½æ¥ãBASEã®ãã¼ã¹ã«ãããããã®æ¹ããè¶ãããã ãã¾ãããæ¬å½ã«ãããã¨ããããã¾ãã ãã®ãããªå ´ãéãã¦BASEã®ãã¨å°ãã§ãç¥ã£ã¦ããã ããæ¹ãå¢ããã¨å¬ããã§ãã
ã¾ããã«ã³ãã¡ã¬ã³ã¹ãä¼ç»ã»éå¬ãã¦ãã ãã£ãVue.js æ¥æ¬ã¦ã¼ã¶ã¼ã°ã«ã¼ãã®æ¹ã並ã³ã«ã¹ã¿ããã®æ¹ã«ãã®å ´ãåãã¦å¾¡ç¤¼ç³ãä¸ãã¾ãã