Angular °ª¯Å½sµ{(²Ä3ª©) ( ²Åé ¦r) |
§@ªÌ¡G[¬ü]¨È·í¡P¥±¹p°Ò(Adam Freeman) µÛ ¸F¤¦ Ķ | Ãþ§O¡G1. -> µ{¦¡³]p -> ºô¸ô½sµ{ -> AngularJS |
ĶªÌ¡G |
¥Xª©ªÀ¡G²MµØ¤j¾Ç¥Xª©ªÀ | 3dWoo®Ñ¸¹¡G 51403 ¸ß°Ý®ÑÄy½Ð»¡¥X¦¹®Ñ¸¹¡I¡i¦³®w¦s¡j NT°â»ù¡G 690 ¤¸ |
¥Xª©¤é¡G6/1/2019 |
¶¼Æ¡G530 |
¥úºÐ¼Æ¡G0 |
|
¯¸ªø±ÀÂË¡G |
¦L¨ê¡G¶Â¥Õ¦L¨ê | »y¨t¡G ( ²Åé ª© ) |
|
¥[¤JÁʪ«¨® ¢x¥[¨ì§Úªº³Ì·R (½Ð¥ýµn¤J·|û) |
ISBN¡G9787302529170 |
§@ªÌ§Ç¡@|¡@ĶªÌ§Ç¡@|¡@«e¨¥¡@|¡@¤º®e²¤¶¡@|¡@¥Ø¿ý¡@|¡@§Ç |
(²Åé®Ñ¤W©Òz¤§¤U¸ü³sµ²¯Ó®É¶O¥\, ®¤¤£¾A¥Î¦b¥xÆW, YŪªÌ»Ýn½Ð¦Û¦æ¹Á¸Õ, ®¤¤£«OÃÒ) |
§@ªÌ§Ç¡G |
ĶªÌ§Ç¡G |
«e¨¥¡G ¢i ¢i ¢i Ķ ªÌ §Ç
¦bWeb¶}µo»â°ì¡A¤@¯ë¨Ï¥ÎHTML§@¬°«eºÝ¶±¤¸¯ÀªºÁn©ú¦¡»y¨¥¡A¨Ï¥ÎCSS§Þ³N§@¬°®i¥Ü¼Ë¦¡ªº´yz»y¨¥¡AJavaScript§@¬°·~°È³B²z¥æ¤¬ªº©R¥O¦¡»y¨¥¡C¦Óºc«Ø«D±`´_ÂøªºWebÀ³¥Î®É¡A¯Âºé¦Ó¦³ªºHTML´NÅã±o«D±`¤£¨¬¡AJavaScript¥»¨¤]·|ÀHµÛ¶µ¥Ø¥N½X¶qªº¿±µÈ¦ÓÅܱoÃø¥HºûÅ@©MºÞ²z¡A¬ãµo¤u´Á©M¦¨¥»¤]·|ÀH¤§Ãø¥H±±¨î¡C¦¹®É¡A¤@¯ë¨Ï¥ÎÃþ®w(¦pjQuery¡BDojoµ¥)©Î®Ø¬[(¦pBackbone¡BEmber©MExtJSµ¥)¨Ó´£¤É¶}µo®Ä²v¡AÁYµu¶µ¥Øªº¤u´Á©M°§C¦¨¥»¡A¤è«K¦ZÄòªººûÅ@©MºÞ²z¡C ¦ÓAngularJS¤£¶È¬O¤@Ó²z©À¥ý¶iªº«eºÝ¶}µo®Ø¬[¡A§ó¬O¤@ºØºÝ¹ïºÝªº¸Ñ¨M¤è®×¡A¤w¸g³Q¥Î¤_Googleªº¦h´Ú²£«~¤¤¡CAngularJS¿í±q¬[ºc³]p¤¤ªºMVC¼Ò¦¡¡A´£Ò®i²{¡B¼Æ¾Ú©MÅÞ¿è³B²z²Õ¥óªºªQ½¢¦X(Ãþ¦üFlex©MWPF)¡CAngularJS³q¹L«ü¥O§Þ³N¹ï¶Ç²ÎHTML¹ê²{¤F¦ÛµMÂX®i¡A³q¹L½sĶ§Þ³N¹ê²{¤F¼Æ¾Ú¼Ò«¬»P®i²{µø¹ÏªºÂù¦V¦Û°Ê¦P¨B¡A®ø°£¤F«eºÝ¶}µo¤¤ÁcÂøªºDOM¾Þ§@¡C³Ì¦Z³q¹L¼Ò¶ô¤Æ³]p¸Ñ¨M¤FJS¥N½XºÞ²zºûÅ@©M«ö»Ý¥[¸üªº°ÝÃD¡A´£°ª¤F¼s¤j«eºÝµ{§Çû¥H¤Î¦ZºÝµ{§Çûªº¥Í²£®Ä²v¡C¦Ó¥B³oºØ¸Ñ½¢¥»¨¡A¤]¹ï«eºÝªº¦Û°Ê¤Æ´ú¸Õ§Þ³N´£¨Ñ¤F¨}¦nªº¤ä«ù¡C AngularJS½Ï¥Í¤_2009¦~¡A¥ÑMisko Hevery ©MAdam Abrons³Ð«Ø¡A¦Z¬°Google©Ò¦¬ÁÊ¡CAngularJS¦³³\¦h¯S©Ê¡A³Ì¬°®Ö¤ßªº¬O¡GMVVM¡B¼Ò¶ô¤Æ¡B¦Û°Ê¤ÆÂù¦V¼Æ¾Ú¸j©w¡B»y¸q¤Æ¼Ðñ¡B¨Ì¿àª`¤Jµ¥¡CAngularJS ¬O±Mªù¬°À³¥Îµ{§Ç³]pªº HTML¡C Angular 2.0¬O2014¦~10¤ë22¤é¦bng-Europe·|ij¤Wµo¥¬ªº¡A¸Óª©¥»§¹¥þ«¼g¤FAngularJS¡C¬°ÁקK¶}µo¤Hûªº§x´b¡A¶}µo¹Î¶¤«Å¥¬¨CӮج[³£À³¸Ó¨Ï¥Î³æ¿Wªº³N»y¡A¨ä¤¤¡§AngularJS¡¨«üªº¬Oª©¥»1¡Cxª©¥»©M¨S¦³¡§JS¡¨ªº¡§Angular¡¨«üªº¬Oª©¥»2¤Î§ó°ªª©¥»¡C Angular 6¤_2018¦~5¤ë4¤éµo¥¬¡C³o¬O¤@Ó«nª©¥»¡A¥¦¹ï©³¼h®Ø¬[ªºÃöª`¸û¤Ö¡A¦Ò¼{§ó¦hªº¬O¤u¨ãÃì¡A¥H¤Î¦p¦ó¨ÏAngular§ó©ö¤_¦b¥¼¨Ó´£°ª®Ä²v¡A¦png update¡Bng add¡BAngular Elements¡BAngular Material + CDK Components¡BAngular Material Starter Components¡BCLI Workspaces¡BLibrary Support¡BTree Shakable Providers¡BAnimations Performance Improvements©MRxJS v6¡C Angular 7ÅýAngularÅܱo§ó¥X¦â¡A¬°¶¶À³²{¥NÁͶռW¥[¤F¤ñ¯S¹ô«õ±¸¡BµêÀÀºu°Ê¡B©ì©ñµ¥¥\¯à¡C ¡mAngular°ª¯Å½sµ{(²Ä3ª©)¡n¤À¬°¤TÓ³¡¤À¡A¨C³¡¤À²[»\¤@²Õ¬ÛÃöªº¥DÃD¡C¡mAngular°ª¯Å½sµ{(²Ä3ª©)¡n²Ä¢¹³¡¤À¦^ÅU¤F¤@¨ÇÃöÁä§Þ³Nªº°ò¥»ª¾ÃÑ¡A¥]¬AHTML¡BCSS©MTypeScript¡A¦}®i¥Ü¦p¦óºc«Ø²Ä¤@ÓAngularÀ³¥Îµ{§Ç¡C²Ä¢º³¡¤À¤¶²ÐAngular¬°ºc«ØÀ³¥Îµ{§Ç´£¨Ñªººc³y¶ô¡A¨Ì¦¸´yz©Ò¦³³o¨Çºc³y¶ô¡C²`¤J´yzAngular¥]§tªº«Ü¦h¤º¸m¥\¯à¡A¥H¤ÎÂ×´IªºAngular¦Û©w¸q¿ï¶µ¡C²Ä¢»³¡¤À¤¶²Ð¦p¦ó¨Ï¥Î°ª¯Å¥\¯à¨Ó³Ð«Ø§ó´_Âø¡B¥iÂX®iªºÀ³¥Îµ{§Ç¡Cºt¥Ü¦p¦ó¦bAngularÀ³¥Îµ{§Ç¤¤¶i¦æ²§¨BHTTP½Ð¨D¡A¦p¦ó¨Ï¥ÎURL¸ô¥Ñ¦bÀ³¥Îµ{§Ç¤¤¾É¯è¡A¥H¤Î¦bÀ³¥Îµ{§Çªºª¬ºAµo¥ÍÅܤƮɦp¦ó¨ÏHTML¤¸¯À¨ã¦³°Êµe®ÄªG¡C ¡mAngular°ª¯Å½sµ{(²Ä3ª©)¡n³ôºÙAngular»â°ìªº¨½µ{¸O¦¡µÛ§@¡A²[»\¤FÃö¤_Angularªº´X¥G©Ò¦³¤º®e¡C¡mAngular°ª¯Å½sµ{(²Ä3ª©)¡n¥¹ê¡B³q«UªºÁ¿¸Ñ¡AÂ×´I¡Bµ¾¹êªº¥Ü¨Ò¡A»¼¶i¡BÄY±Kªº²Õ´¡A¥i¥HÅý·s¤â²@µLÀ£¤O¦aµn°ó¤J«Ç¡A¨³³t§l¨ú·s¤@¥NWebÀ³¥Î¶}µoªººëÅè¡C¹ï¤_¨ã¦³¬ÛÃö¸gÅ窺¥Î¤á¡A¡mAngular°ª¯Å½sµ{(²Ä3ª©)¡n¹ïAngular·§©À©M§Þ³N²Ó¸`ªº¥þ±åªR¡A¥H¤Î¤Þ¤H¤J³Ó¡B¤Á¤¤ªÖãvªºÁ¿¸Ñ¡A±NÀ°§UŪªÌ¹ý©³´x´¤³oӮج[¡A¦b¦Û¤v¾·~§Þ³N×·Ò¤§¸ô¤W§ó¶i¤@¨B¡C ³o¨½n·PÁ²MµØ¤j¾Ç¥Xª©ªÀªº½s¿èÌ¡A¥L̬°¡mAngular°ª¯Å½sµ{(²Ä3ª©)¡nªºÂ½Ä¶§ë¤J¤F¥¨¤j¼ö±¡¦}¥I¥X¤F«Ü¦h¤ß¦å¡C¨S¦³¥L̪ºÀ°§U©M¹ªÀy¡A¡mAngular°ª¯Å½sµ{(²Ä3ª©)¡n¤£¥i¯à¶¶§Q¥I±ê¡C ¹ï¤_³o¥»¸g¨å¤§§@¡AĶªÌ¥»µÛ¡§¸Û´q¸Û®£¡¨ªººA«×¡A¦b½Ķ¹Lµ{¤¤¤O¨D¡§«H¡B¹F¡B¶®¡¨¡A¦ý¬Oų¤_ĶªÌ¤ô¥¦³¡A¿ù»~©M¥¢»~¦b©ÒÃø§K¡A¦p¦³¥ô¦ó·N¨£©M«Øij¡A½Ð¤£§[«ü¥¿¡C ĶªÌ
|
¤º®e²¤¶¡G¥Dn¤º®e: ? ²`¤J²z¸ÑMVC¼Ò¦¡ªº¬[ºc ? ¨Ï¥ÎAngular³Ð«Ø¤º®eÂ×´I¡BÆF°Ê¦hÅܪºWebÀ³¥Î«È¤áºÝ ? ¨Ï¥Îng¤u¨ã³Ð«Ø©Mºc«ØAngular¶µ¥Ø ? ÂX®i©M©w¨îAngular ? ´ú¸ÕAngular¶µ¥Ø
·s¼W¤º®e: ? ®Ú¾ÚAngular 7ªº¯S©Ê©MÅܤưµ¤F¥þ±²ÓPªº×q ? ²[»\@angular/cli¡Bng©R¥O¦æ¤u¨ã©Mwebpack ? ¥]§t¥Î¤_²¤Æ²§¨BHTTP½Ð¨DªºHttpClient ? §ó·s¤FºÞ¹D©M¥»¦a¤Æ¤å¥»ªºÅã¥Ü |
¥Ø¿ý¡G²Ä¢¹³¡¤ÀAngular°ò¦ª¾ÃÑ ²Ä1³¹·Ç³Æ¤u§@3 1.1»Ýn¤F¸Ñ¤°¤\3 1.2¥»®Ñµ²ºc3 1.2.1²Ä¢¹³¡¤À¡GAngular°ò¦ª¾ÃÑ3 1.2.2²Ä¢º³¡¤À¡GAngular¸Ô¸Ñ3 1.2.3²Ä¢»³¡¤À¡GAngular°ª¯Å¥\¯à3 1.3¤j¶q¥Ü¨Ò4 1.4Àò¨ú¥Ü¨Ò¥N½X5 1.5¦p¦ó·f«Ø¶}µoÀô¹Ò5 1.6Áp¨t§@ªÌ5 1.7¥»³¹¤pµ²5 ²Ä2³¹²Ä¤@ÓAngularÀ³¥Îµ{§Ç7 2.1·Ç³Æ¶}µoÀô¹Ò7 2.1.1¦w¸ËNode.js7 2.1.2¦w¸Ëangular-cli¥]8 2.1.3¦w¸ËGit8 2.1.4¦w¸Ë½s¿è¾¹8 2.1.5¦w¸ËÂsÄý¾¹9 2.2³Ð«Ø¦}·Ç³Æ¶µ¥Ø9 2.2.1³Ð«Ø¶µ¥Ø9 2.2.2²K¥[BootstrapCSS¥]9 2.2.3±Ò°Ê¶}µo¤u¨ã10 2.2.4½s¿èHTML¤å¥ó10 2.3¦V¶µ¥Ø¤¤²K¥[Angular¥\¯à12 2.3.1·Ç³ÆHTML¤å¥ó12 2.3.2³Ð«Ø¼Æ¾Ú¼Ò«¬12 2.3.3³Ð«Ø¼ÒªO14 2.3.4·Ç³Æ²Õ¥ó14 2.3.5±NÀ³¥Îµ{§Ç²Õ¦X°_¨Ó16 2.4¦V¥Ü¨ÒÀ³¥Îµ{§Ç¤¤²K¥[¥\¯à17 2.4.1²K¥[«Ý¿ì¨Æ¶µªí®æ17 2.4.2³Ð«ØÂù¦V¼Æ¾Ú¸j©w19 2.4.3²K¥[«Ý¿ì¨Æ¶µ21 2.5¥»³¹¤pµ²23 ²Ä3³¹±NAngular©ñ¦b¤W¤U¤å¤¤25 3.1²z¸ÑAngularªº±j¶µ25 3.1.1©¹ªð¦¡À³¥Îµ{§Ç©M³æ¶¦¡À³¥Îµ{§Ç25 3.1.2Angular»PjQueryªº¤ñ¸û26 3.2¤ñ¸ûAngular¡BReact©MVue.js27 3.3²z¸ÑMVC¼Ò¦¡27 3.3.1²z¸Ñ¼Ò«¬28 3.3.2²z¸Ñ±±¨î¾¹/²Õ¥ó29 3.3.3²z¸Ñµø¹Ï/¼ÒªO30 3.4²z¸ÑRESTfulªA°È30 3.5±`¨£ªº³]p¯Ê³´31 3.5.1±NÅÞ¿è©ñ¿ù¦a¤è31 3.5.2¼Æ¾Ú¦sÀxªö¥Îªº¼Æ¾Ú®æ¦¡32 3.5.3¨¬°÷ªºª¾ÃѨ¬¥H¨î³y³Â·Ð32 3.6¥»³¹¤pµ²32 ²Ä4³¹HTML©MCSS¤Jªù33 4.1·Ç³Æ¥Ü¨Ò¶µ¥Ø33 4.2²z¸ÑHTML34 4.2.1²z¸ÑªÅ¤¸¯À35 4.2.2²z¸ÑÄÝ©Ê35 4.2.3À³¥ÎµLÈÄÝ©Ê35 4.2.4¦bÄݩʤ¤¤Þ¥Î¦r±¶q35 4.2.5²z¸Ñ¤¸¯À¤º®e36 4.2.6²z¸Ñ¤åÀɵ²ºc36 4.3²z¸ÑBootstrap37 4.3.1À³¥Î°ò¥»ªºBootstrapÃþ37 4.3.2¨Ï¥ÎBootstrap¼Ë¦¡¤Æªí®æ40 4.3.3¨Ï¥ÎBootstrap³Ð«Øªí³æ41 4.3.4¨Ï¥ÎBootstrap³Ð«Øºô®æ42 4.4¥»³¹¤pµ²46 ²Ä5³¹JavaScript»PTypeScript¡G²Ä1³¡¤À47 5.1·Ç³Æ¥Ü¨Ò¶µ¥Ø48 5.2¨Ï¥Î»y¥y49 5.3©w¸q©M¨Ï¥Î¨ç¼Æ50 5.3.1©w¸q±a°Ñ¼Æªº¨ç¼Æ51 5.3.2©w¸qªð¦^µ²ªGªº¨ç¼Æ52 5.3.3±N¨ç¼Æ¥Î§@¨ä¥L¨ç¼Æªº¹ê°Ñ52 5.4¨Ï¥ÎÅܶq©MÃþ«¬53 5.4.1¨Ï¥ÎÅܶq³¬¥]54 5.4.2¨Ï¥Î°ò¥»¼Æ¾ÚÃþ«¬54 5.5¨Ï¥ÎJavaScript¾Þ§@²Å56 5.5.1¨Ï¥Î±ø¥ó»y¥y56 5.5.2¬Ûµ¥¾Þ§@²Å©MùÚµ¥¾Þ§@²Å57 5.5.3Å㦡Ãþ«¬Âà´«58 5.6³B²z¼Æ²Õ59 5.6.1¨Ï¥Î¼Æ²Õ¦r±¶q59 5.6.2¼Æ²Õ¤º®eªºÅª¨ú©Mקï59 5.6.3¹M¾ú¼Æ²Õ¤º®e60 5.6.4spread¾Þ§@²Å60 5.6.5¨Ï¥Î¤º¸m¼Æ²Õ¤èªk61 5.7¥»³¹¤pµ²62 ²Ä6³¹JavaScript»PTypeScript¡G²Ä2³¡¤À63 6.1·Ç³Æ¥Ü¨Ò¶µ¥Ø63 6.2¨Ï¥Î¹ï¶H63 6.2.1¨Ï¥Î¹ï¶H¦r±¶q64 6.2.2±N¨ç¼Æ¥Î§@¤èªk64 6.2.3©w¸qÃþ65 6.3³B²zJavaScript¼Ò¶ô67 6.4¦³¥ÎªºTypeScript¯S©Ê70 6.4.1¨Ï¥ÎÃþ«¬ª`¸Ñ70 6.4.2¨Ï¥Î¤¸²Õ74 6.4.3¨Ï¥Î¥i¯Á¤ÞÃþ«¬74 6.4.4¨Ï¥Î³X°Ý×¹¢²Å74 6.5¥»³¹¤pµ²75 ²Ä7³¹SportsStore¡G¤@Ó¯u¹êªºÀ³¥Îµ{§Ç77 7.1·Ç³Æ¶µ¥Ø77 7.1.1¦w¸ËÃB¥~ªºNPM³n¥ó¥]77 7.1.2·Ç³ÆRESTfulWebªA°È78 7.1.3·Ç³ÆHTML¤å¥ó80 7.1.4³Ð«Ø¤å¥ó§¨µ²ºc80 7.1.5¹B¦æ¥Ü¨ÒÀ³¥Îµ{§Ç80 7.1.6±Ò°ÊRESTfulWebªA°È81 7.2·Ç³ÆAngular¶µ¥Ø¥\¯à81 7.2.1§ó·s®Ú²Õ¥ó81 7.2.2§ó·s®Ú¼Ò¶ô82 7.2.3Àˬd¤Þ¾É¤å¥ó82 7.3±Ò°Ê¼Æ¾Ú¼Ò«¬83 7.3.1³Ð«Ø¼Ò«¬Ãþ83 7.3.2³Ð«ØµêÀÀ¼Æ¾Ú·½83 7.3.3³Ð«Ø¼Ò«¬¦sÀx®w84 7.3.4³Ð«Ø¥\¯à¼Ò¶ô85 7.4±Ò°Ê°Ó©±85 7.4.1³Ð«ØStore²Õ¥ó©M¼ÒªO85 7.4.2³Ð«Ø°Ó©±¥\¯à¼Ò¶ô86 7.4.3§ó·s®Ú²Õ¥ó©M®Ú¼Ò¶ô87 7.5²K¥[°Ó©±¥\¯à¡G²£«~¸Ô±¡88 7.5.1Åã¥Ü²£«~¸Ô±¡88 7.5.2²K¥[Ãþ§O¿ï¾Ü89 7.5.3²K¥[²£«~¤À¶¥\¯à90 7.5.4³Ð«Ø¦Û©w¸q«ü¥O92 7.6¥»³¹¤pµ²95 ²Ä8³¹SportsStore¡Gq³æ©Mµ²½ã97 8.1·Ç³Æ¥Ü¨ÒÀ³¥Îµ{§Ç97 8.2³Ð«ØÁʪ«¨®97 8.2.1³Ð«ØÁʪ«¨®¼Ò«¬97 8.2.2³Ð«ØÁʪ«¨®·§Äý²Õ¥ó98 8.2.3±NÁʪ«¨®¶°¦¨¨ì°Ó©±¤¤100 8.3²K¥[URL¸ô¥Ñ102 8.3.1³Ð«ØÁʪ«¨®¸Ô±¡©Mµ²½ã²Õ¥ó102 8.3.2³Ð«Ø©MÀ³¥Î¸ô¥Ñ°t¸m103 8.3.3À³¥Îµ{§Ç¾É¯è104 8.3.4¸ô¥Ñ¦u½Ã106 8.4§¹¦¨Áʪ«¨®¸Ô±¡¥\¯à107 8.5³B²zq³æ109 8.5.1ÂX®i¼Ò«¬109 8.5.2¦¬¶°q³æ¸Ô±¡111 8.6¨Ï¥ÎRESTfulWebªA°È114 8.7¥»³¹¤pµ²115 ²Ä9³¹SportsStore¡GºÞ²z117 9.1·Ç³Æ¥Ü¨ÒÀ³¥Îµ{§Ç117 9.1.1³Ð«Ø¼Ò¶ô117 9.1.2°t¸mURL¸ô¥Ñ¨t²Î119 9.1.3¾É¯è¨ìºÞ²zURL120 9.2¹ê²{¨¥÷ÅçÃÒ121 9.2.1²z¸Ñ¨¥÷ÅçÃÒ¨t²Î121 9.2.2ÂX®i¼Æ¾Ú·½122 9.2.3³Ð«Ø¨¥÷ÅçÃÒªA°È122 9.2.4±Ò¥Î¨¥÷ÅçÃÒ123 9.3ÂX®i¼Æ¾Ú·½©M¦sÀx®w125 9.4³Ð«ØºÞ²z¥\¯àµ²ºc128 9.4.1³Ð«Ø¥e¦ì²Å²Õ¥ó128 9.4.2·Ç³Æ±`¥Î¤º®e©M¥\¯à¼Ò¶ô129 9.4.3¹ê²{²£«~¥\¯à130 9.4.4¹ê²{q³æ¥\¯à133 9.5¥»³¹¤pµ²135 ²Ä10³¹SportsStore¡Gº¥¶i¦¡¥\¯à©M³¡¸p137 10.1·Ç³Æ¥Ü¨ÒÀ³¥Îµ{§Ç137 10.2²K¥[º¥¶i¦¡¯S©Ê137 10.2.1¦w¸ËPWA¥]137 10.2.2½w¦s¼Æ¾ÚURL137 10.2.3ÅTÀ³¹ï³s±µªº§ó§ï138 10.3¬°³¡¸p·Ç³ÆÀ³¥Îµ{§Ç140 10.3.1³Ð«Ø¼Æ¾Ú¤å¥ó140 10.3.2³Ð«ØªA°È¾¹140 10.3.3§ó§ï¦sÀx®wÃþ¤¤ªºWebªA°ÈURL142 10.4ºc«Ø©M´ú¸ÕÀ³¥Îµ{§Ç142 10.5±NSportsStoreÀ³¥Îµ{§Ç®e¾¹¤Æ144 10.5.1¦w¸ËDocker144 10.5.2·Ç³ÆÀ³¥Îµ{§Ç144 10.5.3³Ð«ØDocker®e¾¹144 10.5.4¹B¦æÀ³¥Îµ{§Ç145 10.6¥»³¹¤pµ²146 ²Ä¢º³¡¤ÀAngular¸Ô¸Ñ ²Ä11³¹³Ð«ØAngular¶µ¥Ø149 11.1³Ð«Ø·sªºAngular¶µ¥Ø149 11.2¤F¸Ñ¶µ¥Øµ²ºc150 11.2.1¤F¸Ñsrc¤å¥ó§¨151 11.2.2¤F¸Ñ¥]¤å¥ó§¨152 11.3¨Ï¥Î¶}µo¤u¨ã154 11.3.1¤F¸Ñ¶}µoHTTPªA°È¾¹155 11.3.2¤F¸Ñ¼ö¼Ò«¬´À´«155 11.3.3¨Ï¥Îlinter156 11.4²z¸ÑAngularÀ³¥Îµ{§Ç¬O¦p¦ó¤u§@ªº158 11.4.1²z¸ÑHTML¤åÀÉ158 11.4.2²z¸ÑÀ³¥Îµ{§Ç¤Þ¾É158 11.4.3²z¸ÑAngular®Ú¼Ò¶ô159 11.4.4²z¸ÑAngular²Õ¥ó160 11.4.5²z¸Ñ¤º®eÅã¥Ü160 11.5¦bAngular¶µ¥Ø¤¤¶}©l¶}µo161 11.5.1²K¥[BootstrapCSS®Ø¬[161 11.5.2³Ð«Ø¼Æ¾Ú¼Ò«¬161 11.5.3³Ð«Ø¼ÒªO©M®Ú²Õ¥ó164 11.5.4°t¸m®ÚAngular¼Ò¶ô165 11.6¥»³¹¤pµ²165 ²Ä12³¹¨Ï¥Î¼Æ¾Ú¸j©w167 12.1·Ç³Æ¥Ü¨Ò¶µ¥Ø167 12.2²z¸Ñ³æ¦V¼Æ¾Ú¸j©w168 12.2.1²z¸Ñ¸j©w¥Ø¼Ð169 12.2.2²z¸Ñªí¹F¦¡170 12.2.3²z¸Ñ¬A¸¹171 12.2.4²z¸Ñ±J¥D¤¸¯À171 12.3¨Ï¥Î¼Ð·ÇÄÝ©Ê©MÄݩʸj©w172 12.3.1¨Ï¥Î¼Ð·ÇÄݩʸj©w172 12.3.2¨Ï¥Î¦r²Å¦ê´¡¤J¸j©w173 12.3.3¨Ï¥Î¤¸¯ÀÄݩʸj©w174 12.4³]¸mCSSÃþ©M¼Ë¦¡174 12.4.1¨Ï¥ÎÃþ¸j©w175 12.4.2¨Ï¥Î¼Ë¦¡¸j©w178 12.5§ó·sÀ³¥Îµ{§Çªº¼Æ¾Ú180 12.6¥»³¹¤pµ²182 ²Ä13³¹¨Ï¥Î¤º¸m«ü¥O183 13.1·Ç³Æ¥Ü¨Ò¶µ¥Ø183 13.2¨Ï¥Î¤º¸m«ü¥O185 13.2.1¨Ï¥ÎngIf«ü¥O185 13.2.2¨Ï¥ÎngSwitch«ü¥O187 13.2.3¨Ï¥ÎngFor«ü¥O189 13.2.4¨Ï¥ÎngTemplateOutlet«ü¥O195 13.3²z¸Ñ³æ¦V¼Æ¾Ú¸j©wªº¨î197 13.3.1¨Ï¥Î¾µ¥ªí¹F¦¡197 13.3.2²z¸Ñªí¹F¦¡¤W¤U¤å199 13.4¥»³¹¤pµ²201 ²Ä14³¹¨Ï¥Î¨Æ¥ó©Mªí³æ203 14.1·Ç³Æ¥Ü¨Ò¶µ¥Ø203 14.1.1¾É¤Jªí³æ¼Ò¶ô203 14.1.2·Ç³Æ²Õ¥ó©M¼ÒªO204 14.2¨Ï¥Î¨Æ¥ó¸j©w205 14.2.1²z¸Ñ°ÊºA©w¸qªºÄÝ©Ê206 14.2.2¨Ï¥Î¨Æ¥ó¼Æ¾Ú208 14.2.3¨Ï¥Î¼ÒªO¤Þ¥ÎÅܶq209 14.3¨Ï¥ÎÂù¦V¼Æ¾Ú¸j©w210 14.4³B²zªí³æ212 14.4.1¦V¥Ü¨ÒÀ³¥Îµ{§Ç²K¥[ªí³æ213 14.4.2²K¥[ªí³æ¼Æ¾ÚÅçÃÒ214 14.4.3ÅçÃÒ¾ãÓªí³æ221 14.5¨Ï¥Î°ò¤_¼Ò«¬ªºªí³æ226 14.5.1±Ò¥Î°ò¤_¼Ò«¬ªºªí³æ¥\¯à226 14.5.2©w¸qªí³æ¼Ò«¬Ãþ226 14.5.3¨Ï¥Î¼Ò«¬¶i¦æÅçÃÒ229 14.5.4®Ú¾Ú¼Ò«¬¥Í¦¨¤¸¯À231 14.6³Ð«Ø¦Û©w¸qªí³æÅçÃÒ¾¹232 14.7¥»³¹¤pµ²234 ²Ä15³¹³Ð«ØÄÝ©Ê«ü¥O235 15.1·Ç³Æ¥Ü¨Ò¶µ¥Ø235 15.2³Ð«Ø²³æªºÄÝ©Ê«ü¥O237 15.3¦b«ü¥O¤¤³X°ÝÀ³¥Îµ{§Ç¼Æ¾Ú239 15.3.1Ū¨ú±J¥D¤¸¯ÀÄÝ©Ê239 15.3.2³Ð«Ø¼Æ¾Ú¸j©w¿é¤JÄÝ©Ê241 15.3.3ÅTÀ³¿é¤JÄݩʪºÅܤÆ243 15.4³Ð«Ø¦Û©w¸q¨Æ¥ó244 15.5³Ð«Ø±J¥D¤¸¯À¸j©w247 15.6¦b±J¥D¤¸¯À¤W³Ð«ØÂù¦V¸j©w248 15.7¾É¥X«ü¥O¥Î¤_¼ÒªOÅܶq250 15.8¥»³¹¤pµ²251 ²Ä16³¹³Ð«Øµ²ºc«¬«ü¥O253 16.1·Ç³Æ¥Ü¨Ò¶µ¥Ø253 16.2³Ð«Ø²³æªºµ²ºc«¬«ü¥O254 16.2.1¹ê²{µ²ºc«¬«ü¥OÃþ255 16.2.2±Ò¥Îµ²ºc«¬«ü¥O257 16.2.3¨Ï¥Îµ²ºc«¬«ü¥OªºÂ²¼ä»yªk258 16.3³Ð«Ø¡¥Nµ²ºc«¬«ü¥O259 16.3.1´£¨ÑÃB¥~ªº¤W¤U¤å¼Æ¾Ú261 16.3.2¨Ï¥Î²¼äªºµ²ºc»yªk262 16.3.3³B²zÄݩʯżƾÚÅܧó263 16.3.4³B²z¶°¦X¯Å¼Æ¾ÚÅܧó264 16.4¬d¸ß±J¥D¤¸¯À¤º®e271 16.4.1¬d¸ß¦hÓ¤l¤º®e274 16.4.2±µ¦¬¬d¸ßÅܧó³qª¾275 16.5¥»³¹¤pµ²276 ²Ä17³¹²z¸Ñ²Õ¥ó277 17.1·Ç³Æ¥Ü¨Ò¶µ¥Ø278 17.2¨Ï¥Î²Õ¥ó¨Ó²Õ´À³¥Îµ{§Ç278 17.2.1³Ð«Ø·s²Õ¥ó279 17.2.2©w¸q¼ÒªO282 17.2.3§¹¦¨²Õ¥óªº«²Õ289 17.3¨Ï¥Î²Õ¥ó¼Ë¦¡289 17.3.1©w¸q¥~³¡²Õ¥ó¼Ë¦¡290 17.3.2¨Ï¥Î°ª¯Å¼Ë¦¡¯S©Ê291 17.4¬d¸ß¼ÒªO¤º®e296 17.5¥»³¹¤pµ²298 ²Ä18³¹¨Ï¥Î©M³Ð«ØºÞ¹D299 18.1·Ç³Æ¥Ü¨Ò¶µ¥Ø299 18.2²z¸ÑºÞ¹D302 18.3³Ð«Ø¤@Ó¦Û©w¸qºÞ¹D303 18.3.1ª`¥U¦Û©w¸qºÞ¹D303 18.3.2À³¥Î¦Û©w¸qºÞ¹D304 18.3.3²Õ¦XºÞ¹D305 18.3.4³Ð«Ø«D¯ÂºÞ¹D306 18.4¨Ï¥Î¤º¸mºÞ¹D309 18.4.1®æ¦¡¤Æ¼ÆÈ309 18.4.2®æ¦¡¤Æ³f¹ôÈ311 18.4.3®æ¦¡¤Æ¦Ê¤À¤ñ313 18.4.4®æ¦¡¤Æ¤é´Á314 18.4.5§ïÅܦr²Å¦ê¤j¤p¼g317 18.4.6±N¼Æ¾Ú§Ç¦C¤Æ¬°JSON¼Æ¾Ú317 18.4.7±N¼Æ¾Ú¼Æ²Õ¤Á¤ù318 18.5¥»³¹¤pµ²319 ²Ä19³¹¨Ï¥ÎªA°È321 19.1·Ç³Æ¥Ü¨Ò¶µ¥Ø321 19.2²z¸Ñ¹ï¶H¤Àµo°ÝÃD322 19.2.1°ÝÃDªº´£¥X322 19.2.2§Q¥Î¨Ì¿àª`¤J±N¹ï¶H§@¬°ªA°È¤Àµo326 19.2.3¦b¨ä¥Lºc³y¶ô¤¤Án©ú¨Ì¿à330 19.3²z¸Ñ´ú¸Õ¹jÂ÷°ÝÃD335 19.4§¹¦¨ªA°Èªº¿Ä¤J338 19.4.1§ó·s®Ú²Õ¥ó©M¼ÒªO338 19.4.2§ó·s¤l²Õ¥ó339 19.5¥»³¹¤pµ²340 ²Ä20³¹¨Ï¥ÎªA°È´£¨Ñµ{§Ç341 20.1·Ç³Æ¥Ü¨Ò¶µ¥Ø342 20.2¨Ï¥ÎªA°È´£¨Ñµ{§Ç343 20.2.1¨Ï¥ÎÃþ´£¨Ñµ{§Ç345 20.2.2¨Ï¥ÎÈ´£¨Ñµ{§Ç350 20.2.3¨Ï¥Î¤u¼t´£¨Ñµ{§Ç351 20.2.4¨Ï¥Î¤w¦³ªºªA°È´£¨Ñµ{§Ç353 20.3¨Ï¥Î¥»¦a´£¨Ñµ{§Ç354 20.3.1²z¸Ñ³æÓªA°È¹ï¶Hªº§½©Ê354 20.3.2¦b²Õ¥ó¤¤³Ð«Ø¥»¦a´£¨Ñµ{§Ç355 20.3.3²z¸ÑªA°È´£¨Ñµ{§Çªº´À¥N¤è®×357 20.3.4±±¨î¨Ì¿à¸ÑªR360 20.4¥»³¹¤pµ²361 ²Ä21³¹¨Ï¥Î©M³Ð«Ø¼Ò¶ô363 21.1·Ç³Æ¥Ü¨Ò¶µ¥Ø363 21.2²z¸Ñ®Ú¼Ò¶ô365 21.2.1²z¸ÑimportsÄÝ©Ê366 21.2.2²z¸ÑdeclarationsÄÝ©Ê366 21.2.3²z¸ÑprovidersÄÝ©Ê367 21.2.4²z¸ÑbootstrapÄÝ©Ê367 21.3³Ð«Ø¥\¯à¼Ò¶ô368 21.3.1³Ð«Ø¼Ò«¬¼Ò¶ô369 21.3.2³Ð«Ø¹ê¥Î¤u¨ã¥\¯à¼Ò¶ô373 21.3.3¥Î²Õ¥ó³Ð«Ø¤@Ó¥\¯à¼Ò¶ô377 21.4¥»³¹¤pµ²380 ²Ä¢»³¡¤ÀAngular°ª¯Å¥\¯à ²Ä22³¹³Ð«Ø¥Ü¨Ò¶µ¥Ø383 22.1±Ò°Ê¥Ü¨Ò¶µ¥Ø383 22.1.1²K¥[©M°t¸mBootstrapCSS¥]383 22.1.2³Ð«Ø¶µ¥Øµ²ºc383 22.2³Ð«Ø¼Ò«¬¼Ò¶ô384 22.2.1³Ð«Ø²£«~¼Æ¾ÚÃþ«¬384 22.2.2³Ð«Ø¼Æ¾Ú·½©M¦sÀx®w384 22.2.3§¹¦¨¼Ò«¬¼Ò¶ô385 22.3³Ð«Ø®Ö¤ß¼Ò¶ô385 22.3.1³Ð«Ø¦@¨Éª¬ºAªA°È386 22.3.2³Ð«Øªí®æ²Õ¥ó386 22.3.3³Ð«Øªí³æ²Õ¥ó387 22.4.4§¹¦¨®Ö¤ß¼Ò¶ô389 22.4³Ð«Ø®ø®§¼Ò¶ô389 22.4.1³Ð«Ø®ø®§¼Ò«¬©MªA°È389 22.4.2³Ð«Ø²Õ¥ó©M¼ÒªO390 22.4.3§¹¦¨®ø®§¼Ò¶ô390 22.5§¹¦¨¶µ¥Ø391 22.6¥»³¹¤pµ²392 ²Ä23³¹¨Ï¥ÎReactiveExtensions393 23.1·Ç³Æ¥Ü¨Ò¶µ¥Ø394 23.2²z¸Ñ°ÝÃD394 23.3¨Ï¥ÎReactiveExtensions¸Ñ¨M°ÝÃD396 23.3.1²z¸ÑObservable396 23.3.2²z¸ÑObserver398 23.3.3²z¸ÑSubject399 23.4¨Ï¥ÎasyncºÞ¹D400 23.5ÂX®iÀ³¥Îµ{§Ç¥\¯à¼Ò¶ô402 23.6§ó¶i¤@¨B404 23.6.1¹LÂo¨Æ¥ó404 23.6.2Âà´«¨Æ¥ó405 23.6.3¥u±µ¦¬¤£¦Pªº¨Æ¥ó407 23.6.4Àò¨ú©M©¿²¤¨Æ¥ó409 23.7¥»³¹¤pµ²410 ²Ä24³¹¥Í¦¨²§¨BHTTP½Ð¨D411 24.1·Ç³Æ¥Ü¨Ò¶µ¥Ø411 24.1.1°t¸m¼Ò«¬¥\¯à¼Ò¶ô412 24.1.2³Ð«Ø¼Æ¾Ú¤å¥ó412 24.1.3§ó·sªí³æ²Õ¥ó413 24.1.4¹B¦æ¥Ü¨Ò¶µ¥Ø413 24.2²z¸ÑRESTfulWebªA°È414 24.3´À´«ÀRºA¼Æ¾Ú·½414 24.3.1³Ð«Ø·sªº¼Æ¾Ú·½ªA°È414 24.3.2°t¸m¼Æ¾Ú·½416 24.3.3¨Ï¥ÎREST¼Æ¾Ú·½416 24.3.4«O¦s©M§R°£¼Æ¾Ú417 24.4¥[±jHTTP½Ð¨D419 24.5¥Í¦¨¸ó°ì½Ð¨D420 24.6°t¸m½Ð¨DÀY422 24.7³B²z¿ù»~424 24.7.1¥Í¦¨¥Î¤á¥i¨Ï¥Îªº®ø®§425 24.7.2³B²z¿ù»~426 24.8¥»³¹¤pµ²427 ²Ä25³¹¸ô¥Ñ»P¾É¯è¡G²Ä1³¡¤À429 25.1·Ç³Æ¥Ü¨Ò¶µ¥Ø429 25.2¶}©l¾Ç²ß¸ô¥Ñ431 25.2.1³Ð«Ø¸ô¥Ñ°t¸m431 25.2.2³Ð«Ø¸ô¥Ñ²Õ¥ó433 25.2.3§ó·s®Ú¼Ò¶ô433 25.2.4§¹¦¨°t¸m433 25.2.5²K¥[¾É¯èÃì±µ434 25.2.6²z¸Ñ¸ô¥Ñªº®ÄªG436 25.3§¹¦¨¸ô¥Ñ¹ê²{437 25.3.1¦b²Õ¥ó¤¤³B²z¸ô¥ÑÅܤÆ438 25.3.2¨Ï¥Î¸ô¥Ñ°Ñ¼Æ439 25.3.3¦b¥N½X¤¤¾É¯è444 25.3.4±µ¦¬¾É¯è¨Æ¥ó445 25.3.5§R°£¨Æ¥ó¸j©w©M¤ä«ù¥N½X446 25.4¥»³¹¤pµ²448 ²Ä26³¹¸ô¥Ñ»P¾É¯è¡G²Ä2³¡¤À449 26.1·Ç³Æ¥Ü¨Ò¶µ¥Ø449 26.2¨Ï¥Î³q°t²Å©M«©w¦V454 26.2.1¦b¸ô¥Ñ¤¤¨Ï¥Î³q°t²Å454 26.2.2¦b¸ô¥Ñ¤¤¨Ï¥Î«©w¦V455 26.3¦b²Õ¥ó¤º³¡¾É¯è456 26.3.1ÅTÀ³¥¿¦bµo¥Íªº¸ô¥ÑÅܤÆ457 26.3.2¬°¬¡°Ê¸ô¥Ñ³]¸m¤£¦P¼Ë¦¡ªºÃì±µ459 26.3.3×´_All«ö¶s461 26.4³Ð«Ø¤l¸ô¥Ñ462 26.4.1³Ð«Ø¤l¸ô¥Ñ¥X¤f463 26.4.2±q¤l¸ô¥Ñ³X°Ý°Ñ¼Æ464 26.5¥»³¹¤pµ²467 ²Ä27³¹¸ô¥Ñ»P¾É¯è¡G²Ä3³¡¤À469 27.1·Ç³Æ¥Ü¨Ò¶µ¥Ø469 27.2¦u½Ã¸ô¥Ñ470 27.2.1¨Ï¥Î¸ÑªR¾¹±À¿ð¾É¯è470 27.2.2ÁקK±a¦³¦u½Ãªº¾É¯è476 27.3°ÊºA¥[¸ü¥\¯à¼Ò¶ô484 27.3.1³Ð«Ø¤@Ó²³æªº¥\¯à¼Ò¶ô484 27.3.2°ÊºA¥[¸ü¼Ò¶ô485 27.3.3¦u½Ã°ÊºA¼Ò¶ô488 27.4«ü©w©R¦W¥X¤f490 27.4.1³Ð«Øªþ¥[ªº¥X¤f¤¸¯À490 27.4.2¦b¨Ï¥Î¦hÓ¥X¤fªº±¡ªp¤U¾É¯è491 27.5¥»³¹¤pµ²493 ²Ä28³¹¨Ï¥Î°Êµe495 28.1·Ç³Æ¥Ü¨Ò¶µ¥Ø496 28.1.1¸T¥ÎHTTP©µ¿ð496 28.1.2²¤Æªí®æ¼ÒªO©M¸ô¥Ñ°t¸m496 28.2¶}©l¾Ç²ßAngular°Êµe498 28.2.1±Ò¥Î°Êµe¼Ò¶ô498 28.2.2³Ð«Ø°Êµe499 28.2.3À³¥Î°Êµe501 28.2.4´ú¸Õ°Êµe®ÄªG503 28.3²z¸Ñ¤º¸mªº°Êµeª¬ºA504 28.4²z¸Ñ¤¸¯À¹L´ç505 28.4.1¬°¤º¸mª¬ºA³Ð«Ø¹L´ç505 28.4.2±±¨î°Êµeªº¹L´ç506 28.5²z¸Ñ°Êµe¼Ë¦¡²Õ510 28.5.1¦b¥i«¥Îªº¤À²Õ¤¤©w¸q¤½¦@¼Ë¦¡510 28.5.2¨Ï¥Î¤¸¯ÀÅܧÎ511 28.5.3À³¥ÎCSS®Ø¬[¼Ë¦¡512 28.6¥»³¹¤pµ²514 ²Ä29³¹Angular³æ¤¸´ú¸Õ515 29.1·Ç³Æ¥Ü¨Ò¶µ¥Ø516 29.2³Ð«Ø¤@Ó²³æªº³æ¤¸´ú¸Õ517 29.3¨Ï¥ÎJasmine§¹¦¨³æ¤¸´ú¸Õ518 29.4´ú¸ÕAngular²Õ¥ó519 29.4.1¨Ï¥ÎTestBedÃþ§¹¦¨¤u§@519 29.4.2´ú¸Õ¼Æ¾Ú¸j©w522 29.4.3´ú¸Õ±a¦³¥~³¡¼ÒªOªº²Õ¥ó523 29.4.4´ú¸Õ²Õ¥ó¨Æ¥ó525 29.4.5´ú¸Õ¿é¥XÄÝ©Ê526 29.4.6´ú¸Õ¿é¤JÄÝ©Ê528 29.4.7´ú¸Õ²§¨B¾Þ§@529 29.5´ú¸ÕAngular«ü¥O531 29.6¥»³¹¤pµ²532
|
§Ç¡G |