Äú¿ÉÒÔ¾èÖú£¬Ö§³ÖÎÒÃǵĹ«ÒæÊÂÒµ¡£

1Ôª 10Ôª 50Ôª





ÈÏÖ¤Â룺  ÑéÖ¤Âë,¿´²»Çå³þ?Çëµã»÷Ë¢ÐÂÑéÖ¤Âë ±ØÌî



  ÇóÖª ÎÄÕ ÎÄ¿â Lib ÊÓÆµ iPerson ¿Î³Ì ÈÏÖ¤ ×Éѯ ¹¤¾ß ½²×ù Model Center   Code  
»áÔ±   
   
 
     
   
 ¶©ÔÄ
  ¾èÖú
Ò»¸öÖ»ÓÐ 99 ÐдúÂëµÄ JS Á÷³Ì¿ò¼Ü
 
×÷ÕߣºÕÅÕòÛÚ À´Ô´£ºcsdn ·¢²¼ÓÚ£º2017-5-19
  2566  次浏览      27
 

×î½üÒ»Ö±ÔÚÏëÒ»¸öÎÊÌ⣬ÈçºÎÄÜÈÃjs´úÂëдÆðÀ´¸üÓïÒ廯ºÍ¸ü¾ßÓпɶÁÐÔ¡£

ÉÏÖÜÄ©µÄʱºòÍ»·¢ÆæÏ룬µ±´úÂëÔÚÔËÐеÄʱºò£¬Æäʵ¸úÎÒÃÇ×öÊÂÇéÊÇÀàËÆµÄ£¬¶¼ÊÇ×öÍêÒ»²½½Ó×ÅÏÂÒ»²½£¬²¢ÇÒÕâЩÊÂÇéÓÐЩÊǿɹ滮µÄ£¬ÓÐЩÊÇÐèÒª×öÍê¸Ã²½²ÅÖªµÀÏÂÒ»²½¸Ã×öʲô¡£Ïëµ½ÕâÀïÒ»¸öjs¿ò¼Ü³ûÐÎÔÚÎÒ´óÄÔÖÐÂýÂýÐγɣ¬ÔÝÇÒÃüÃûΪflowJS¡£

½Ó×Å˵˵Õâ¸ö¿ò¼ÜÓ¦¸ÃÓÐÄÄЩAPI£¿

¿ÉÒÔÔ¤Ïȹ滮ºÃÁ÷³ÌµÄÿһ²½£¬Èçthis.setNext('²½ÖèA').setNext('²½ÖèB')¡­¡­

¿ÉÒÔÔÚÈκÎÒ»²½¾ö¶¨ÏÂÒ»²½×öʲô£¬Èç this.setNext('²½ÖèC')£¬ÆäʵÕâÀïµÄAPIºÍÉÏÃæµÄÒ»Ñù£¬Ö»Êǵ÷Óõĵط½²»Ò»Ñù¶øÒÑ¡£

ÔÚÈκÎÒ»²½ÖУ¬¿ÉÒÔÖªµÀµ±Ç°²½ÊÇÔÚ×öʲô£¬Ç°ÃæÒ»²½×öÁËʲô¡¢ÏÂÒ»²½×¼±¸Òª×öʲô£¬Èçthis.getCurr()¡¢this.getPrev()¡¢this.getNext()¡£

µ±Ç°²½×öÍêºó£¬Äܽ«½á¹û¸æËßÏÂÒ»²½£¨½ö½öÊÇÏÂÒ»²½ÄÜ»ñÈ¡µ½µ±Ç°²½´«µÝµÄ½á¹û£¬Ò²¾ÍÊÇΪÁ˱£»¤±äÁ¿ÎÛȾ£¬Ã¿Ò»²½¶¼Ö»ÄÜ»ñÈ¡µ½Ç°Ò»²½µÄ½á¹û£©£¬Èç ¸øÏÂÒ»²½´«Öµthis.nextData({name1:value1,name2:value2,¡­¡­})¡¢»ñÈ¡ÉÏÒ»²½´«À´µÄÖµthis.stepData(name1)»òthis.stepData()¡£

¿ÉÒÔÉèÖûò»ñÈ¡Õû¸öÁ÷³ÌµÄÈ«¾Ö±äÁ¿£¬ÕâÑùËùÓеIJ½Öè¶¼Äܹ²Ïí¸Ã±äÁ¿£¬Èç ÉèÖÃÈ«¾Ö±äÁ¿Öµthis.flowData({name1:value1,name2:value2,¡­¡­})£¬»ñȡȫ¾Ö±äÁ¿Öµthis.flowData(name1)»òthis.flowData()¡£

ÉÏÒ»²½¿ÉÒÔÖªµÀµ±Ç°²½µÄÖ´Ðнá¹û£¬³É¹¦ or ʧ°Ü£¬Èç ÔÚÉÏÒ»²½ÖÐÉèÖÃthis.setNext('²½ÖèB', successFun, failFun)¡¢µ±Ç°²½ÖÐͨ¹ýthis.success(args)¡¢this.fail(args)À´¸æËßÉÏÒ»²½¡£

µ±Ç°²½¿ÉÒÔËæÊ±Í¨ÖªÏÂÒ»²½¿ªÊ¼Ö´ÐУ¬Èçthis.next()¡£

ÓÐЩ²½ÖèÄܲ¢ÐÐÖ´ÐУ¬²¢ÇÒÒª¶¼Ö´ÐÐÍê²ÅÄÜÖ´ÐÐÏÂÒ»²½£¬Èç this.setNext('²½ÖèA').setNext([²½ÖèB1,²½ÖèB2,²½ÖèB3]).setNext('²½ÖèC')¡£

¿ÉÒÔÔÚÈκÎʱºòÖªµÀµ±Ç°´úÂëÁ÷³ÌÔËÐйýµÄ¹ì¼££¬ÈçflowJS.trace£¬Õâ¶ÔÓÚÁ˽âÒ³ÃæµÄÖ´Ðйý³Ì»á±È½ÏÓаïÖú¡£

Talk is cheap, Show me the code!

1¡¢¿ÉÒÔÔ¤Ïȹ滮ºÃÁ÷³ÌµÄÿһ²½£¬Èçthis.setNext('²½ÖèA').setNext('²½ÖèB')¡­¡­

2¡¢¿ÉÒÔÔÚÈκÎÒ»²½¾ö¶¨ÏÂÒ»²½×öʲô£¬Èç this.setNext(¡®²½ÖèC¡¯) £¬ÆäʵÕâÀïµÄAPIºÍÉÏÃæµÄÒ»Ñù£¬Ö»Êǵ÷Óõĵط½²»Ò»Ñù¶øÒÑ¡£

3¡¢ÔÚÈκÎÒ»²½ÖУ¬¿ÉÒÔÖªµÀµ±Ç°²½ÊÇÔÚ×öʲô£¬Ç°ÃæÒ»²½×öÁËʲô¡¢ÏÂÒ»²½×¼±¸Òª×öʲô£¬Èç this.getCurr() ¡¢this.getPrev() ¡¢this.getNext() ¡£

4¡¢µ±Ç°²½×öÍêºó£¬Äܽ«½á¹û¸æËßÏÂÒ»²½£¨½ö½öÊÇÏÂÒ»²½ÄÜ»ñÈ¡µ½µ±Ç°²½´«µÝµÄ½á¹û£¬Ò²¾ÍÊÇΪÁ˱£»¤±äÁ¿ÎÛȾ£¬Ã¿Ò»²½¶¼Ö»ÄÜ»ñÈ¡µ½Ç°Ò»²½µÄ½á¹û£©£¬Èç ¸øÏÂÒ»²½´«Öµthis.nextData({name1:value1,name2:value2,¡­¡­})¡¢»ñÈ¡ÉÏÒ»²½´«À´µÄÖµthis.stepData(name1)»òthis.stepData()¡£

5¡¢¿ÉÒÔÉèÖûò»ñÈ¡Õû¸öÁ÷³ÌµÄÈ«¾Ö±äÁ¿£¬ÕâÑùËùÓеIJ½Öè¶¼Äܹ²Ïí¸Ã±äÁ¿£¬Èç ÉèÖÃÈ«¾Ö±äÁ¿Öµthis.flowData({name1:value1,name2:value2,¡­¡­})£¬»ñȡȫ¾Ö±äÁ¿Öµthis.flowData(name1)»òthis.flowData()¡£

6¡¢ÉÏÒ»²½¿ÉÒÔÖªµÀµ±Ç°²½µÄÖ´Ðнá¹û£¬³É¹¦ or ʧ°Ü£¬Èç ÔÚÉÏÒ»²½ÖÐÉèÖÃthis.setNext('²½ÖèB', successFun, failFun)¡¢µ±Ç°²½ÖÐͨ¹ýthis.success(args)¡¢this.fail(args)À´¸æËßÉÏÒ»²½¡£

7¡¢µ±Ç°²½¿ÉÒÔËæÊ±Í¨ÖªÏÂÒ»²½¿ªÊ¼Ö´ÐУ¬Èçthis.next()¡£

8¡¢ÓÐЩ²½ÖèÄܲ¢ÐÐÖ´ÐУ¬²¢ÇÒÒª¶¼Ö´ÐÐÍê²ÅÄÜÖ´ÐÐÏÂÒ»²½£¬Èç this.setNext('²½ÖèA').setNext([²½ÖèB1,²½ÖèB2,²½ÖèB3]).setNext('²½ÖèC')¡£

9¡¢¿ÉÒÔÔÚÈκÎʱºòÖªµÀµ±Ç°´úÂëÁ÷³ÌÔËÐйýµÄ¹ì¼££¬ÈçflowJS.trace£¬Õâ¶ÔÓÚÁ˽âÒ³ÃæµÄÖ´Ðйý³Ì»á±È½ÏÓаïÖú¡£

ÆäʵflowJSµÄÓ÷¨²¢²»ÏÞÓÚÉÏÃædemoÁгöµÄ·½Ê½£¬±ÈÈçÄã¿ÉÒÔÊÔ×ÅÔÚijһ²½ÖÐÁ¬Ðøµ÷Óü¸´Îthis.next()£¬Äã»á·¢ÏÖÏÂÒ»²½»á±»´¥·¢¶à´Î¡£ÏëÒªÖªµÀ¸ü¶àÓ÷¨£¬¿ÉÒÔ°ÑÎÒÃÇÆ½Ê±¿´µ½µÄÁ÷³ÌͼÐÅÏ¢Ì×Óõ½ÀïÃæÈ¥ÊµÏÖ¡£

¿ÉÄÜÓÐÈË»áÓÃPromiseÀ´¸úflowJS¶Ô±È£¬ÆäʵPromise¸ü¶àµÄÊÇΪÁ˽â¾öJSÒì²½»Øµ÷µÄÎÊÌ⣬¶øflowJS²»½öÒ²Äܽâ¾öÒì²½»Øµ÷ÎÊÌ⣬»¹ÄÜÈôúÂë¿´ÆðÀ´¸ü¼ÓÓïÒ廯ºÍÁ÷³Ì»¯£¬Ê¹µÃ´úÂë¸ü¾ß¿É¶ÁÐÔ¡£

ÌØ±ðÊÇÔÚ´¦ÀíÄÇÖÖ±ÈÈçÌá½»Ò»¸öÊý¾Ýǰ£¬ÐèÒª×öÒ»Á¬´®µÄУÑéºÍ½Ó¿Úµ÷ÓõÄʱºò£¬»á¸ü¼ÓÊʺϣ¬Èç¹ûÄÄÌìÐèÒªÔÚÖм䴩²åÒ»¸öУÑé»ò½Ó¿Úµ÷Óã¬Ö»ÐèÒªÍùÁ÷³ÌÖÐÌí¼ÓÒ»²½¾Í¿ÉÒÔÁË£¬ÍêÈ«×öµ½ËÉñîºÏ¡£

flowJS²»½öÄÜÓÃÓÚÒ³ÃæJS¿ª·¢£¬Í¬ÑùÔÚnodeJSºáÐеÄʱ´ú£¬±ØÐëÒ²ÊÇÖ§³ÖÔÚ·þÎñ¶ËµÄnodeJSÀ´Ê¹Óõģ¬ÎÞÈκεÚÈý·½ÒÀÀµ£¡

ºÃÁË£¬°²ÀûÁËÄÇô¶à£¬ÏÖÔÚÀ´¿´¿´Õâ¸öÖ»ÓÐ99ÐдúÂëµÄ¿ò¼ÜµÄÕæÃæÄ¿ ¡ý

ÎÒÕæµÄûÓÐѹËõ´úÂ룬ËüÕæµÄÖ»ÓÐ99ÐУ¡

   
2566 ´Îä¯ÀÀ       27
Ïà¹ØÎÄÕÂ

Éî¶È½âÎö£ºÇåÀíÀôúÂë
ÈçºÎ±àд³öÓµ±§±ä»¯µÄ´úÂë
ÖØ¹¹-ʹ´úÂë¸ü¼ò½àÓÅÃÀ
ÍŶÓÏîÄ¿¿ª·¢"±àÂë¹æ·¶"ϵÁÐÎÄÕÂ
Ïà¹ØÎĵµ

ÖØ¹¹-¸ÄÉÆ¼ÈÓдúÂëµÄÉè¼Æ
Èí¼þÖØ¹¹v2
´úÂëÕû½àÖ®µÀ
¸ßÖÊÁ¿±à³Ì¹æ·¶
Ïà¹Ø¿Î³Ì

»ùÓÚHTML5¿Í»§¶Ë¡¢Web¶ËµÄÓ¦Óÿª·¢
HTML 5+CSS ¿ª·¢
ǶÈëʽC¸ßÖÊÁ¿±à³Ì
C++¸ß¼¶±à³Ì