
ǰÑÔ
ǰ¶ËÄ£¿é»¯£¬Ö÷ÒªÊǽâ¾öÁ½¸öÎÊÌ⡪¡ª¡°ÃüÃû¿Õ¼ä³åÍ»¡±£¬¡°ÎļþÒÀÀµ¹ÜÀí¡±¡£
¿Ó___ÃüÃû¿Õ¼ä³åÍ»
1.ÎÒ×Ô¼º²âÊԺõĴúÂëºÍ´ó¼ÒºÏ²¢ºóÔõôÆð³åÍ»ÁË?
2.Ò³Ãæ½Å±¾µÄ±äÁ¿»òº¯Êý¸²¸ÇÁ˹«Óнű¾µÄ¡£
¿Ó___ÎļþÒÀÀµ¹ÜÀí
1.Ã÷Ã÷ÏîÄ¿ÐèÒªÒýÈëµÄ°ü¶¼Òý½øÀ´ÁËÔõô»¹±¨È±ÉÙ°ü?
2.ÊÖ¶¯¹ÜÀíÒÀÀµ£¬ÓÐÌìÒª¸ü»»Ä³¸ö²å¼þ£¬ÒªÉîÈë´úÂëÄÚ²¿½øÐÐÐÞ¸Ä
3.ÈçÏÂͼ£¬ÏÔʾµÄ´úÂë¼ÓÔØ£¬ÒÀÀµ¹ØÏµ¸´ÔÓ¡£ÔÚF.jsÖУ¬·Ö²»Çåij¸ö±äÁ¿ÊÇÀ´×ÔC.js£¬»¹ÊÇE.js
4.Á½´Î¼ÓÔØÍ¬Ò»¸öÄ£¿é¡£±ÈÈçÒýÈëÁËÁ½±éJQ

ÆäËûµÄ¿Ó
1.ΪÁËʵÏֽű¾¸´Ó㬽«Ò»¸öºÜ´óµÄ¹«ÓÃpublicÎļþÒýÈë¸÷¸öÒ³ÃæÖУ¬ÆäÖеÄijЩº¯Êý£¬Ö»Óиö±ðÒ³ÃæÓõ½¡£
2.ij¸ö¹¦Äܵĺ¯ÊýȺº¯Êý£¬ÓëÁíÒ»¸ö¹¦Äܵĺ¯ÊýȺ°ÚÔÚÒ»Æð£¬Ê¹ÓÃ×¢ÊÍÀ´·Ö¸ô¡£
Ŀǰ½â¾öµÄ·½·¨ÊÇ:Ä£¿é»¯
1.ÃüÃû¿Õ¼ä£º¸÷¸öÄ£¿éµÄÃüÃû¿Õ¼ä¶ÀÁ¢¡£AÄ£¿éµÄ±äÁ¿x²»»á¸²¸ÇBÄ£¿éµÄ±äÁ¿x¡£
2.Ä£¿éµÄÒÀÀµ¹ØÏµ:ͨ¹ýÄ£¿é¹ÜÀí¹¤¾ßÈçwebpack/requireJS/browserifyµÈ½øÐйÜÀí¡£
Ä£¿é»¯µÄ»ù±¾ÔÀí¡ª¡ª½â¾öÃüÃû¿Õ¼ä³åÍ»
JavaScriptµÄȱÏÝ£¬Ê×µ±Æä³å¾ÍÊÇÈ«¾Ö±äÁ¿¡£ÕâʹµÃÿÏëÃüÃûÒ»¸ö±äÁ¿µÄʱºò¶¼ÒªÈý˼ÓÖÈý˼£¬ÉúÅÂÉÏ·½ÎÞÇîÔ¶µÄµØ·½ÓÐÒ»¸öͬÊÂЩµÄ´úÂëºÍ×Ô¼º³åÍ»¡£ÒÔÏÂÊÇһЩ·À·¶·½·¨
Ò»¡¢Ê¹ÓÃÃüÃû¿Õ¼ä
//¶¨Òå var module = { name: 'rouwan', sayName:function(){ console.log(this.name) } } //ʹÓà var a = module.name; console.log(a) |
×ܽ᣺ֱ½ÓÐÞ¸Äname²»»áÓ°Ïìmodule.name£¬Ò»¶¨³Ì¶È±£»¤ÁËÃüÃû¿Õ¼ä¡£ÓÐÁ½¸öȱµã£¬Ò»£¬Íⲿ»¹ÊÇ¿ÉÒÔÐÞ¸ÄmoduleµÄÊôÐԺͷ½·¨¡£¶þ£¬ÃüÃû¿Õ¼äÓÐʱ³¤ÆðÀ´³¬ºõÄãµÄÏëÏó¡£ÊʺÏһЩСÐ͵ķâ×°£¬ÈçһЩÅäÖá£
¶þ¡¢Á¢¼´Ö´Ðк¯Êý + ±Õ°ü(ʵÏÖÄ£¿éµÄ»ù±¾·½·¨)
Á¢¼´º¯Êý¿ÉÒÔ´´½¨×÷ÓÃÓò£¬±Õ°üÔò¿ÉÒÔÐγÉ˽ÓбäÁ¿ºÍº¯Êý
//´´½¨ var module = (function(){ var privateName = 'inner'; //˽ÓбäÁ¿ var privateFunc = function(){ //˽Óк¯Êý console.log('˽Óк¯Êý') } return { name: 'rouwan', //¹«ÓÐÊôÐÔ sayName:function(){ //¹«Óк¯Êý console.log(this.name) } } })() //ʹÓà module.sayName(); //'rouwan' |
×ܽ᣺ÕâÊÇĿǰ±È½Ï³£ÓõÄÄ£¿é¶¨Ò巽ʽ£¬¿ÉÒÔÇø·Ö˽ÓгÉÔ±ºÍ¹«ÓгÉÔ±¡£¹«ÓбäÁ¿ºÍ·½·¨£¬ºÍ֮ǰһÑù¿ÉÒÔÖ±½Óͨ¹ýmodule.nameµÄ·½Ê½Ð޸ġ£Ë½ÓбäÁ¿ºÍ·½·¨£¬ÊÇÎÞ·¨·ÃÎʵ쬳ý·Ç¸øÄã¸öÐÞ¸Ä˽ÓгÉÔ±µÄ¹«Óз½·¨¡£
Èý¡¢ÔÚÉÏÊö»ù´¡ÉÏ£¬ÒýÈëÆäËûÄ£¿é
//¶¨Òå var module1 = (function(mod){ var privateName = 'inner1'; var privateFunc = function(){ console.log('˽Óк¯Êý1') } return { name : 'rouwan1', sayName: function(){ console.log(this.name) }, anotherName:mod.name, //ÁíÒ»¸öÄ£¿éÉϵĹ«ÓвÎÊý sayAnotherName:mod.sayName //ÁíÒ»¸öÄ£¿éÉϵĹ«Óз½·¨ } })(anotherModule) //ÒýÈëÁËÁíÒ»¸öÄ£¿é //ʹÓà module1.sayOtherName() |
×ܽ᣺ÔÚÒ»¸öÄ£¿éÖпÉÒÔÒýÈëÁíÒ»¸öÄ£¿é¡£
ËÄ¡¢ÆäËûµÄ·½Ê½
·Å´óģʽµÈÊÇÒÔÍùÓÃÀ´¹ÜÀí´óÐÍÄ£¿é£¬½øÐÐÎļþ²ð·ÖµÄ·½·¨¡£ÏÖÔÚwebpackµÈÄ£¿é»¯¹¤¾ß¶¼ºÜÍêÉÆµÄÇé¿öÏ£¬ÒѾÏÔµÃÓеãÂäºóÁË¡£¾Í²»½éÉÜÁË¡£
¸æ±ðµ¶¸û»ðÖÖµÄʱ´ú¡ª¡ªÄ£¿é»¯¹¹½¨¹¤¾ß(½â¾öÒÀÀµ¹ÜÀí)
ÎÒÁ˽âjsÄ£¿éÊÇ´ÓÁ¢¼´Ö´Ðк¯Êý¿ªÊ¼µÄ¡£µ«Êǵȵ½ÕæÕýʹÓù¹½¨¹¤¾ßµÄʱºò£¬È´·¢ÏÖÒµ½ç²ÉÓõÄÄ£¿é»¯·½°¸£¬È´²¢·ÇÊÇÒ»¸öÒ»¸öÓÉÁ¢¼´º¯Êý+±Õ°üÐγɵļ¯Èº¡£
¶øÊÇÓÃÁËÖîÈçAMD/CMD/CommonJS/ES6Ä£¿éµÈµÈÄ£¿é»¯ÊµÏÖ¡£
ÕâÀïÃæµÄÔÒò¿ÉÄÜÓÐÕ⼸¸ö£¬Ò»£¬±Õ°üµÄÐÔÄÜÎÊÌâ¡£¶þ£¬µ±Ä£¿éÔö¶àµÄʱºò£¬ÐèÒª½â¾öÄ£¿é¼äµÄÒÀÀµ¹ÜÀíÎÊÌâ¡£
¹ØÓÚÒÀÀµ¹ÜÀí£¬Ä¿Ç°ÏîÄ¿ÀïÅöµ½Á˼¸¸ö²»Êæ·þµÄµØ·½£º

1.½ö´Ëһͼ£¬ÎÞÐë¶àÑÔ
2.HTMLÖÐÒýÈëÁËÁ½±éµÄjq£¬µ¼Ö½ű¾±¨´í¡£
3.ÓÐÒ»¸ö¹«Óýű¾£¬°üº¬ÁËN¶àµÄ¹«ÓÃÄ£¿é¡£ÓÐÐ©Ò³ÃæÃ÷Ã÷Ö»Óõ½ÁËÒ»¸öÄ£¿é£¬Ò²±ØÐëÈ«²¿¼ÓÔØÒ»±é¡£
Òò´Ë£¬±ØÐëʹÓÃÄ£¿é»¯¹ÜÀí¹¤¾ß!
¼¸¸ö¸ÅÄî

°ü¹ÜÀí¹¤¾ß: °²×°¡¢Ð¶ÔØ¡¢¸üС¢²é¿´¡¢ËÑË÷¡¢·¢²¼°ü¡£±ÈÈçÄãÐèÒª°²×°¸öjqµÈ£¬Í¨¹ýnpmÀ´°²×°¡£npmÀïÓÐÒÀÀµ¹ÜÀí£¬¼ÙÈçjq»òÕß˵expressÉý¼¶ÁË£¬ÔÀ´´úÂë²»ÄÜÓÃÁË¡£°ïÖúÄã½â¾öÕâ¸öÎÊÌâµÄ¾ÍÊÇnpm¡£
Ä£¿é»¯¹¹½¨¹¤¾ß£ºwebpack/requireJS/seaJS£¬µÈÊÇÓÃÀ´×é֯ǰ¶ËÄ£¿éµÄ¹¹½¨¹¤¾ß(¼ÓÔØÆ÷)¡£Í¨¹ýʹÓÃÄ£¿é»¯¹æ·¶(AMD/CMD/CommonJS/es6)µÄÓï·¨À´ÊµÏÖ°´Ðè¼ÓÔØ¡£¾Ù¸öÀõ×Ó£¬Èç¹ûÓÐÒ»ÌìÄã²»ÓÃά»¤Ò»¸öºÜ³¤ºÜ³¤µÄ¹«Óýű¾Îļþ£¬ÕâµÃ¸ÐлËü¡£
Ä£¿é»¯¹æ·¶£º£ºAMD/CMD/CommonJS/es6Ä£¿éµÈµÈ¹æ·¶£¬¹æ·¶ÁËÈçºÎÀ´×éÖ¯ÄãµÄ´úÂë¡£Ò»°ãÕâÖÖ·½Ê½Ð´µÄ´úÂëä¯ÀÀÆ÷²»ÈÏ£¬ÐèÒªÓÃÄ£¿é»¯¹¹½¨¹¤¾ßÀ´´ò°ü±àÒë³Éä¯ÀÀÆ÷¿ÉÒÔʶ±ðµÄÎļþ¡£
´ÓÎҵıí¸ñÀ¿ÉÒÔ¿´³öÎÒµÄÍÆ¼ö´îÅ䡪¡ª¡ª¡ª npm +webpack + es6Ä£¿é¡£
ÀíÓÉÈçÏ£º
npmÓëbower±È½Ï£º
ÔÀ´bowerµÄʹÓÃÓÅÊÆ¾ÍÊÇÊʺÏǰ¶ËÄ£¿é¹ÜÀí£¬¶ønpm±»ÊÓΪֻÊʺϺó¶ËµÄ¹ÜÀí¡£µ«ÊÇËæ×ÅwebpackµÄÁ÷ÐУ¬Õâ¸öÒѾºÁÎÞÒÉÎÊÊÇnpmʤ³öÁË¡£npm+webpack£¬¿ÉÒÔʵÏÖÁ¼ºÃµÄǰ¶ËÄ£¿é¹ÜÀí¡£
webpackºÍrequireJS±È½Ï£º

¼¸ÖÖÄ£¿é»¯¹æ·¶±È½Ï£º

ËùÒԾ;ö¶¨ÊÇÄãÁË! npm + webpack + es6Ä£¿é¡£ |