±à¼ÍƼö: |
±¾ÎÄÀ´×ÔÓÚÍøÂ磬½éÉÜÁËÔÚ¿ª·¢¡¾ÌÚѶÓÎÏ·ÈËÉú¡¿¸ÃÕâ¿îС³ÌÐò¹ý³ÌÖеÄһЩ˼¿¼ºÍ»ýÀÛµÄ×ܽᡣ |
|
Ò»¡¢»ù´¡ÆÕ¼°
1.1¼ò½é
΢ÐÅС³ÌÐòÊÇ΢ÐŹ«ÖÚÆ½Ì¨ÍƳö³ý·þÎñºÅ¡¢¶©Ôĺš¢ÆóÒµºÅÍâµÄµÚËÄÖÖ΢ÐÅÄÚÓ¦ÓÃÀàÐÍ£¬ËüÊÇÒ»ÖÖȫеÄÁ¬½ÓÓû§Óë·þÎñµÄ·½Ê½£¬Ëü¿ÉÒÔÔÚ΢ÐÅÄÚ±»±ã½ÝµØ»ñÈ¡ºÍ´«²¥£¬Í¬Ê±¾ßÓгöÉ«µÄ·ÂÔÉúappµÄ½»»¥Ê¹ÓÃÌåÑéºÍʵÓù¦ÄÜ¡£

ÎÒÃÇ¿ÉÒÔ·½±ãµÄÔÚ΢ÐŹ«ÖÚÆ½Ì¨½øÐÐС³ÌÐòµÄ×¢²áºÍÌá½»×ÊÁÏ£¬Óë΢ÐŹ«ÖںŵÄ×¢²áÁ÷³Ì½ÏΪһÖ¡£¶ÔÓÚ¹«Ë¾ÄÚ²¿µÄС³ÌÐòÒ²¿ÉÒÔÔÚ¹«Ë¾ÄÚ²¿Æ½Ì¨½øÐпìËÙ×¢²áºÍÉóºË,Ôڴ˲»¾ßÌå׸Êö¡£
1.2ÅäÖÃ
Óû§ÅäÖãºÐ¡³ÌÐò¹ÜÀíÆ½Ì¨ÌṩÓû§¹ÜÀí¹¦ÄÜ£¬Ö§³ÖÌí¼Ó1¸ö¹ÜÀíÔ±£¬¸ù¾ÝÕʺÅÀàÐͺÍÊÇ·ñÈÏÖ¤·Ö±ðÖ§³ÖÅäÖò»Í¬ÊýÄ¿µÄ¿ª·¢ÕߺÍÌåÑéÕßÕʺÅȨÏÞ£¬ÕâЩÅäÖÃÔÚС³ÌÐò¿ª·¢ºÍÄÚ²â½×¶ÎÊ®·ÖÓÐÓ㬼´ÊÇÒ»¸ö¹Ù·½µÄ°×Ãûµ¥ÅäÖù¦ÄÜ¡£
¿ª·¢ÅäÖãºÓë΢ÐŹ«Ö򼁮äËûÕʺſª·¢½ÓÈëÅäÖÃÀàËÆ£¬ÐèÒª·Ö±ðÉèÖÿª·¢ÕßIDºÍÃÜÔ¿¡¢·þÎñÆ÷ÓòÃûÅäÖᢿª·¢ÏûÏ¢½ÓÈëµØÖ·µÈÐÅÏ¢£¬¿É²Î¿¼Ð¡³ÌÐò¿ª·¢ÎĵµÖðÒ»ÉèÖ㬶ÔÓÚÓпª·¢¹«ÖںžÑéµÄͬѧÀ´ËµÒ²±È½Ï¿ìËÙÈëÊÖ£¬Ö»ÊÇÐèҪעÒâÕâÀïµÄÓòÃû½ÓÈë¶¼±ØÐëÒªÊÇhttpsµÄ·þÎñÓòÃûµØÖ·¡£

¶þ¡¢¿ª·¢×¢Òâ
2.1Ò³ÃæÄ£ÐÍ
С³ÌÐò°üº¬Ò»¸öÃèÊöÕûÌå³ÌÐòµÄ app ºÍ¶à¸öÃèÊö¸÷×ÔÒ³ÃæµÄ page×é³É£¬¿ÉÒÔ¿´×öÊÇһϵÁÐÒ³ÃæµÄ×éºÏ¼¯³É£¬ÓÉÒ»¸öÈ«¾Öapp¶ÔÏóµ÷¶ÈÔËÐС£Ò³ÃæÄ£ÐÍÊÇС³ÌÐòÀïµÄÒ»¸öºÜÖØÒªµÄ¸ÅÄ´ÓС³ÌÐòÅäÖÃÎļþapp.jsonÖÐÒ²¿ÉÒÔ¿´µ½(ÈçÏÂËùʾ)£¬ÔÚapp.jsonÖÐ×¢²áµÄÒ³ÃæµØÖ·²Å¿ÉÒÔ±»µ÷Óúʹò¿ªÕ¹Ê¾¡£Ð¡³ÌÐòµÄÕ¹Ê¾Ò³ÃæÖ÷Òª·ÖΪtabbarÒ³ºÍ³£¹æÒ³Á½ÖÖ£¬¶øÖ»ÓÐtabbarÒ³²Å»áÓеײ¿tabbarÏÔʾ£¬Á½ÀàÒ³Ãæ¶ÔÓ¦µÄÌø×ª·½Ê½apiÒ²²»Í¬£º
¶ÔÓÚtabbarÒ³µØÖ·(Àý page/xxx/xxx)£¬µ÷ÓÃwx.switchTab(OBJECT)½øÐÐÌø×ª£»
¶ÔÓÚ³£¹æÒ³µØÖ·(Àý page/xxx/x1)£¬µ÷ÓÃwx.navigateTo(OBJECT)»òwx.redirectTo(OBJECT)½øÐÐÌø×ª
{ "pages":
[ "page/xxx/x1", "page/yyy/y1"
], "window": { "navigationBarTitleText":
"test"
}, "tabBar": { "list":
[{ "pagePath": "page/xxx/xxx",
"iconPath": "image/xxx.png",
"text": "tab1"
}, { "pagePath": "page/yyy/yyy",
"iconPath": "image/yyy.png",
"text": "tab2"
}]
}, "networkTimeout": { "request":
10000, "uploadFile": 10000
}, "debug": true
} |
¶ÔÓÚÒ»¸ö¾ßÌåµÄÒ³ÃæÄ£ÐÍ£¬¶¼ÓÐÆäÄÚ²¿¶ÀÁ¢µÄÂß¼ºÍÊý¾Ý×÷ÓÃÓò¡£Ö÷Òª°üÀ¨Ëĸö×é³ÉÎļþ£¬ÇÒ±ØÐëÒªÓÐÏàͬµÄ·¾¶Ä¿Â¼ºÍÎļþÃû£¬ÀýÈ磺Ê×Ò³¶ÔÓ¦/page/index/Ŀ¼ÏµÄindex.js¡¢index.wxml¡¢index.wxss¡¢index.jsonÎļþ¡£

Ò³ÃæµÄ³õʼ»¯¡¢äÖȾ¡¢½»»¥µÈÂß¼¶¼¿ÉÒÔͨ¹ýÒ³Ãæjs½øÐÐʼþ¼àÌýºÍº¯Êýµ÷ÓýøÐÐÏìÓ¦ºÍ´¦Àí£¬ÀàËÆ×öwebǰ¶Ë¿ª·¢Ò»Ñù£¬Ö»ÊÇÐèÒªÌØ±ð×¢Òâ¸Ãjs¿ª·¢Óëwebǰ¶Ëjs¿ª·¢µÄ²¿·Ö²»Í¬Ö®´¦£º
Ò³ÃæÂß¼ÔËÐÐÔÚJscoreÖУ¬·Çwebview£¬ÎÞwindow¡¢body¡¢documentµÈdom¶ÔÏó½á¹¹£»
ÎÞÒ³Ãæcookie£¬ÎÞ·¨ÉèÖÃÍøÂçÇëÇóheaderµÄrefer£»
²»Ö§³ÖÀàËÆjquery¡¢zeptoµÈ¶ÔÏóʰȡ²å¼þºÍ²Ù×÷·½Ê½£¬ÊÓͼ¸üÐÂͨ¹ýÊý¾Ý°ó¶¨·½Ê½ÊµÏÖ£»
Ò³ÃæÕ¹Ê¾½á¹¹Ö÷ÒªÓɹٷ½ÔÉú×é¼þƴװչʾ£¬²¢Í¨¹ý¶ÔÓ¦Ö§³ÖµÄÓÐÏÞµÄʼþº¯Êý½øÐÐÏìÓ¦¿ØÖÆ£¬À©Õ¹»¯½ÏµÍ£»
Ò³ÃæÊý¾ÝµÄ¸Ä±äͨ¹ýµ÷ÓÃPage.setDataº¯Êý»ØÏÔÒ³Ãæ×é¼þչʾ£¬Ò³Ãæ×é¼þµÄ¶¯×÷ʼþÖµ£»e.detail.value¿ÉÒÔ´«µÝ¸øÊ¼þÏìÓ¦º¯ÊýÖØÉèÒ³ÃæÊý¾Ý£¬ÒÔ´Ë´ïµ½Ò³ÃæÊý¾ÝºÍ×é¼þµÄÁª¶¯°ó¶¨
2.2ÉúÃüÖÜÆÚ
С³ÌÐòµÄÔËÐк͸÷Ò³ÃæµÄչʾ¶¼ÓÐÆäÌØ¶¨µÄÉúÃüÖÜÆÚ£¬²¢Í¨¹ýһϵÁеÄÉùÃ÷ÖÜÆÚº¯Êý½øÐе÷¶È¿ØÖÆ¡£ÀýÈçappÈ«¾ÖʵÀýµÄonLaunch¡¢onShow¡¢onHideµÈ¼àÌýº¯ÊýÀ´ÏìӦС³ÌÐò³õʼ»¯ºÍÏÔӰʱµÄ¿ØÖÆÂß¼¡£¶ø¶ÔÓÚpageÒ³ÃæÔòÓµÓиüΪ·á¸»µÄ¼àÌýµ÷¿Øº¯Êý£¬ÊµÏÖÒ³ÃæÉúÃüÖÜÆÚÖиü¶àÇé¿öµÄ¿ØÖÆ´¦Àí¡£

ÏÂͼ˵Ã÷ÁËС³ÌÐòpageÒ³ÃæÊµÀýµÄÉúÃüÖÜÆÚÔË×÷£º

¶øÕë¶ÔС³ÌÐòÄÚ²¿µÄ¶à¸öÒ³ÃæÖ®¼äµÄÇл»Õ¹Ê¾¹ÜÀí£¬ÔòÓÉС³ÌÐò¿ò¼Ü·ÓɺÍÒ³ÃæÕ»¿ØÖÆÍйܣ¬²¢Í¨¹ý·ÓɱêÇ©»òµ¼º½·½Ê½apiº¯Êý½øÐÐÒ³ÃæÇл»¡£ÐèҪעÒâµÄÊÇÒ³Ãæ³õʼ»¯µÚÒ»´ÎonLoadºóÈç¹ûÖ»ÊÇonHideÔÚºǫ́²»Õ¹Ê¾¶ø²¢Î´onUnloadÏú»Ù£¬Ï´ÎÔÙÇлظÃÒ³ÃæÕ¹Ê¾Ê±£¬²»»áÔÙ´¥·¢onLoad¼àÌý£¬¶øÊÇ´¥·¢onShow¼àÌý£»onShowÔÚÒ³ÃæµÄ³õʼ»¯»òÿ´Îչʾʱ¶¼»á´¥·¢£¬Òò´ËÕâÀïÓиöС¼¼ÇÉ£¬²¿·ÖÐèҪʵʱ¸üÐÂչʾµ½Ò³ÃæµÄÊý¾Ý¿ÉÔÚonShowÖнøÐлñÈ¡´¦Àí¡£

Èý¡¢Êý¾Ý´¦Àí
3.1Êý¾ÝÇëÇó
С³ÌÐòÀïµÄÍøÂçÇëÇóÖ÷ÒªÓÉwx.request(OBJECT)¡¢wx.uploadFile(OBJECT)µÈapi·ÃÎÊС³ÌÐòÅäÖõÄhttpsÓòÃûurl½Ó¿ÚʵÏÖ¡£Ç°ÕßÀàËÆÓÚajaxÇëÇ󣬺óÕßͨ³£ÓÃÀ´ÉÏ´«Í¼Æ¬ÎļþµÈ¡£ÕâÀïÇëÇóAPIÓÐЩ¿ÓÐèҪעÒ⣺
ÇëÇó²»Ö§³ÖÉèÖÃheaderµÄrefer£»
ÇëÇóurl²»ÔÊÐí´ø×Ô¶¨Òå¶Ë¿Ú£¬Ö»ÄÜÊÇĬÈÏ80¶Ë¿Ú£»
ÇëÇócontent-typeĬÈÏΪ'application/json'£¬ÈçÐèÓÃPOSTÇëÇóÔòÐè¸ÄΪ'application/x-www-form-urlencoded'»ò'multipart/form-data'£¬·ñÔòºǫ́ÇëÇóÀïµÃ²»µ½postÊý¾Ý£»
ºǫ́½ÓÊÕÇëÇóphpÀï×îºÃÓÃjson_decode£¨file_get_contents("php://input")£©·½Ê½»ñÈ¡ÍêÕûµÄpostÊý¾Ý£¬·ñÔòÈç¹û´«µÝ½ÏΪ¸´ÔӵĶà²ãpostÊý¾Ý½á¹¹Ì壬ֱ½ÓÓÃ$_POSTµÈ¿ÉÄܵ¼Ö»ñÈ¡Êý¾Ý¸ñʽÒì³£»òʧ°Ü
С³ÌÐòÀïµÄÊý¾ÝÇëÇó²Ù×÷×îºÃ¶¼ÐèÒª½øÐеǼ̬°²È«Ð£Ñ飬ÎÒÃÇÔÚÕâÀï·ÂÔì֮ǰ×öH5ÏîÄ¿µÄ΢ÐÅÊÚȨУÑ鷽ʽ£¬°Ñµ÷ÓÃ΢ÐŵǼºÍÊÚȨºó»ñµÃµÄopenidµÈÊý¾Ý½øÐмÓÃÜ»ñȡһ¸öticketƱ¾Ý£¬²¢ÉèÓйýÆÚʱ¼ä£¬Ð¡³ÌÐòµÄÿ¸öÊý¾ÝÇëÇóÔòÐèÒª¸½¼ÓЯ´øopenidºÍ¸Ãticket²ÎÊýÔÚºǫ́phpÀï½øÐÐУÑ飬³É¹¦ÔòÕý³£½øÐкóÐøÇëÇóºÍ·µ»ØÊý¾Ý£¬Ê§°ÜÔò¸æÖªÐ¡³ÌÐò¿Í»§¶ËÖØÐµÇ¼ºÍÊÚȨºóÔÙÇëÇóÊý¾Ý¡£Ð£ÑéµÄºËÐÄËã·¨Ò²½ÏΪ¼òµ¥£¬¾ÍÊÇÅжÏÔÚticketÓÐЧÆÚʱ¼äÄÚÊÇ·ñÂú×ãÈçϵÈʽ£º
sha1(APPID@openid@TOKEN) == ticket |
¶øµÇ¼ºÍÊÚȨºó³õʼµÄticketÉú³ÉÒ²¼´ÓõĸÃËã·¨×óʽÉú³É£¬²¢·µ»ØÐ¡³ÌÐò±¾µØ»º´æ¼Ç¼£¬Ï´ÎÇëÇó¿É´Ó»º´æÈ¡³öÖ±½ÓÓ¦Óá£
×îºó¶ÔС³ÌÐòÀïµÄËùÓÐÊý¾ÝÇëÇó½øÐÐÁË´¦Àí£¬·â×°ÁËGET/POSTÇëÇóµÄheaderÉèÖᢵǼ̬²ÎÊýµÄ¸½¼ÓºÍ¹ýÆÚ´¦Àí¡¢ÇëÇóloadingЧ¹ûµÄÏÔÒþ¿ØÖƵÈÂß¼£¬²¢ÉèÖÃÔÚappÈ«¾Ö¶ÔÏóµÄ±©Â¶·½·¨httpRequestÖУ¬·½±ãÔÚ¸÷×ÓÒ³Ãæµ÷Óô¦Àí¡£

ÓÉÓÚÎÒÃǵÄС³ÌÐòÐèÒª¸ù¾ÝÓû§Éí·ÝÕ¹ÏÖ²»Í¬×´Ì¬µÄtabbarÊ×Ò³£¬Òò´ËÐèÒª°ÑÓû§Éí·ÝÐÅÏ¢µÄÇëÇóǰÖã¬ÕâÀïÉè¼ÆÁËÒ»¸öloading¹ý¶ÉÒ³Ãæ£¬ÇÒ¸ÕºÃÔÚÕâ¸öÒ³Ãæ½øÐÐÁË΢ÐŵǼºÍÊÚȨ£¬²¢µÃµ½µÇ¼̬²ÎÊý³õʼ»¯£¬È»ºóÇëÇóÁËÓû§µÄÉí·ÝºóÉèÖõ½appÈ«¾ÖÊý¾Ý£¬²¢ÔÚtabbarÊ×Ò³½øÐжÔÓ¦ÅжϺÍչʾ¡£


3.2Ò³ÃæÍ¨ÐÅ
ÎÒÃǵÄС³ÌÐòÀïÓÐÐèÒªÉ̼Ò×¢²áºÍ´´½¨ÀÞ̨µÄ¹¦ÄÜÒ³Ãæ£¬ÐèÒªÌîдµÄÐÅÏ¢ºÍ²ã¼¶½Ï¶à£¬²»×ãÒÔÒ»ÆÁչʾºÍÌîд£¬Òò´ËÐèÒªÖ§³ÖÊý¾ÝÔÚ¿çÒ³Ãæ¼äµÄ´«µÝºÍµ÷ÓõÄͨÐÅÄÜÁ¦£¬ÇÒ¶ÔÊý¾Ý½øÐÐÍêÕû¡¢ÓÐЧºÍ°²È«µÄ¹ÜÀí£¬²¢ÊµÊ±ÏìÓ¦Ò³Ãæ¸üÐÂչʾ¡£»ùÓÚС³ÌÐò±¾ÉíÌṩµÄapiºÍÌØµã£¬Ò²²éÔÄÁËһЩ×ÊÁÏ£¬Ö÷ÒªµÃµ½Èçϼ¸ÖÖ˼·ºÍ·½·¨£º

ÎÒÃÇ¿¼Âǵ½±íµ¥Êý¾Ý½Ï¶à£¬ÇÒ²úÆ·ÐèÇó±íµ¥ÐèÒª±¾µØ²Ý¸åµÄ¹¦ÄÜ£¬Ï´ÎÔÙ´ò¿ª¿ÉÏÔʾÉÏ´ÎÌîдÊý¾Ý£¬ÎÞÐèÖØÐÂÔÙ´ÎÌîд£¬Òò´Ë×îÖÕ½áºÏÁË»º´æºÍÒ³ÃæÂ·ÓÉÕ»µÄ¹¦ÄܽøÐÐʵÏÖ¡£ÔÚ±íµ¥Ö÷Ò³ÃæAÀûÓÃlocalStorage»º´æÍÐ¹Ü±íµ¥È«ÌåÊý¾ÝformData£¬²¢ÔÚ×ÓÒ³ÃæBÓÃÒ³ÃæÕ»getCurrentPages»ñÈ¡ºÍ²Ù×÷Ö÷Ò³ÃæAµÄ±íµ¥Ä³¿é×ÓÊý¾ÝformData.subData£¬×ÓÒ³ÃæBµÄÐ޸IJÙ×÷ͨ¹ýA.setDataʵʱ´«µÝºÍ֪ͨÖ÷Ò³ÃæAµÄË¢ÐÂչʾ£¬Ö÷Ò³ÃæAÔÚonUnloadÖÐÏìÓ¦¶ÔlocalstoreageµÄÐ޸ı£´æ£¬±ãÓÚÏ´μÓÔØ¶ÁÈ¡¡£

ËÄ¡¢´úÂëά»¤
4.1¹«ÓÃÅäÖÃ
С³ÌÐò´úÂëÖÐÉæ¼°µÄ½Ï¶àÊý¾Ý¡¢²ÎÊý¡¢½Ó¿Ú¡¢ÎݸµÈ×Ô¶¨ÒåÐÅÏ¢£¬¿É×ö³Éͳһ±¾µØ»¯ÅäÖ㬷ÅÈëappʵÀýµÄÈ«¾ÖÊý¾ÝÖй«Ó㬱ãÓÚ¸÷×ÓÒ³Ãæ»ñÈ¡´¦Àí£¬Í¬Ê±½áºÏС³ÌÐòloading³õʼ»¯Ê±½øÐÐÔ¶³ÌÇëÇó¸üÐÂÅäÖá£ÕâÑùµÄºÃ´¦ÊÇ£¬¿ÉÒÔ¼æÈÝÅäÖÃÐÅÏ¢¸üÐÂÓë·ñÇé¿öϵÄÅäÖÃͳһ¹ÜÀí¡£µ±ÐèÒªÅäÖøüÐÂʱ£¬ÄÜ´ÓÔ¶³ÌÀÈ¡Ìæ»»£¬¶ø²»ÐèÒªÐÞ¸ÄС³ÌÐòµÄ´úÂëÎļþ£¬ÖØÐÂÔÙ×ß´úÂë·¢²¼¼°µÈ´ýÉóºËµÄÁ÷³Ì¡£
4.2´«Í¼×é¼þ
С³ÌÐòÖÐ×¢²áÉ̼Ò×ÊÁϺʹ´½¨ÀÞ̨ʱ¶¼Éæ¼°µ½ÁËͼƬµÄÉÏ´«´¦Àí£¬Óõ½ÁËС³ÌÐò¹Ù·½µÄ´«Í¼Ñùʽ×é¼þºÍAPI£¬Í¬Ê±ÐèÒªµ÷ÓÃͳһµÄºǫ́ÉÏ´«Í¼Æ¬Éú³ÉURLµÄ½Ó¿Ú¡£Òò´ËÕâÀïÓбØÒª¿ÉÒÔ½øÐÐ×é¼þÄ£¿é»¯·â×°µÄ´úÂëÓÅ»¯£¬±ãÓÚÔÚ¶à¸öpageÒ³ÃæÄÚÒýÈëµ÷Óá£
picloader.wxml
<template
name="picloader"> <view class="weui-cells
weui-cells_after-title"> <view
class="weui-cell"> <view class="weui-cell__bd">
<view class="weui-uploader">
<view class="weui-uploader__hd">
<view class="weui-uploader__title">{{title}}</view>
</view> <view class="weui-uploader__bd">
<view class="weui-uploader__files">
<block wx:if="{{picture}}">
<view class="weui-uploader__file"
bindtap="previewImage" data-obj="{{name}}">
<image class="weui-uploader__img"
src="{{picture}}" mode="aspectFill"
/> </view> </block>
<input id="{{name}}" name="{{name}}"
hidden="{{true}}" value="{{picture}}"/>
</view> <view class="weui-uploader__input-box">
<view class="weui-uploader__input"
bindtap="chooseImage" data-obj="{{name}}"></view>
</view> </view> </view>
</view> <view class="weui-cell__ft"><icon
type="{{validate}}"/></view>
</view> </view>
</template> |
picloader.js
const app =
getApp();
function init(pageDelegate) {
//1.³õʼ»¯Í¼Æ¬ÉÏ´«ÖÖ×ÓHASHÖµ
app.httpRequest({
url:app.Utils.getRequestUrl("getUploadHash"),
success: function( res ) {
if(res.r== "0"){
pageDelegate.setData({
_hash:res._hash
});
}
},
},false);
//2.°ó¶¨Ñ¡ÔñͼƬʼþ
pageDelegate.chooseImage = function (e) {
var that = this;
var uploadUrl = app.Config.uploadBase;
var obj = e.currentTarget.dataset.obj;//Ð޸ĶÔÏóÃû
if (e.currentTarget.dataset.ratio) {//³ß´ç±ÈÀýÏÞÖÆ
uploadUrl += "?size_ratio=" + e.currentTarget.dataset.ratio;
}
wx.chooseImage({
sizeType: ['original', 'compressed'], // ¿ÉÒÔÖ¸¶¨ÊÇÔͼ»¹ÊÇѹËõͼ£¬Ä¬È϶þÕß¶¼ÓÐ
sourceType: ['album', 'camera'], // ¿ÉÒÔÖ¸¶¨À´Ô´ÊÇÏà²á»¹ÊÇÏà»ú£¬Ä¬È϶þÕß¶¼ÓÐ
count:1,
success: function (res0) {
// ·µ»ØÑ¡¶¨ÕÕÆ¬µÄ±¾µØÎļþ·¾¶ÁÐ±í£¬tempFilePath¿ÉÒÔ×÷Ϊimg±êÇ©µÄsrcÊôÐÔÏÔʾͼƬ
app.uploadRequest({
url:uploadUrl,
filePath: res0.tempFilePaths[0],
data:{
_hash:that.data._hash
},
success:function(res){
var picurl = res.url || "";
var tmpData = {};
tmpData["formData." + obj] = picurl;
that.setData(tmpData);
app.Utils.checkValid(obj, picurl,that);
if (res.r != "0" && res.msg){
wx.showModal({
title: 'ͼƬÉÏ´«Ê§°Ü',
content: res.msg,
showCancel: false,
success: function (res) {
}
});
}
}
})
}
})
}
//3.°ó¶¨Ô¤ÀÀͼƬʼþ
pageDelegate.previewImage = function (e) {
var obj = e.currentTarget.dataset.obj;//Ð޸ĶÔÏóÃû
var pic = this.data.formData[obj] || "";
if(pic == ""){
return false;
}
wx.previewImage({
current: e.currentTarget.id,
urls: [pic] // ÐèÒªÔ¤ÀÀµÄͼƬhttpÁ´½Ó
});
}
}
//Ä£¿é»¯
module.exports = {
init: init
} |
ʹÓÃʾÀýwxmlÖУº
<import src="/page/common/picloader.wxml"/>
<template is="picloader" data="{{title:
'½±ÀøÍ¼Æ¬ÉÏ´«', picture:formData.award_pic,validate:validate.award_pic, name:'award_pic'}}"/> |
ʹÓÃʾÀýjsÖУº
const app =
getApp();
var picloader = require('/utils/picloader.js');
Page({
data:{
...
},
onLoad:function(options){
// Ò³Ãæ³õʼ»¯ optionsÎªÒ³ÃæÌø×ªËù´øÀ´µÄ²ÎÊý
//×¢²áͼƬÉÏ´«×é¼þ
picloader.init(this);
},
...
}) |
4.3·ÖƬģ°æ
С³ÌÐòtabbarÊ×Ò³µÄÐèÇóÊǸù¾Ý²»Í¬µÄÓû§Éí·ÝÕ¹ÏÖ²»Í¬×´Ì¬µÄÊ×Ò³£¬ÓÐδÈëפ¡¢´ýÉóºË¡¢ÉóºËͨ¹ý¡¢ÉóºË±»¾ÜËÄÖÖ״̬£¬¶ø¶¼ÐèÒª¶ÔÓ¦µ½Í¬Ò»¸ötabbarÊ×Ò³url¡£Òò´ËÕâÀïÐèÒª°ÑËÄÖÖ״̬µÄÒ³ÃæÆ¬¶Î²¿·Ö·Ö±ð×ö³É×ÓÄ£°æwxmlµÄÐÎʽ£¬Í¨¹ýС³ÌÐòµÄÌõ¼þäÖȾ£¨wx:if£©»úÖÆ¸ù¾ÝÓû§Éí·ÝÇé¿ö°´Ìõ¼þµ÷ÓöÔÓ¦×ÓÄ£°æ½øÐÐչʾ¡£
ͬʱС³ÌÐò½Ï¶àÒ³Ãæ¶¼Óй²Í¬µÄÍ·²¿£¨bannerͼ£©ºÍβ²¿£¨ÁªÏµ¿Í·þ£©µÈƬ¶Îչʾ£¬Òò´ËÕâÀïÒ²¿¼ÂÇ°ÑÆä×ö³É¶ÔÓ¦µÄ¹«ÓÃheadºÍfoot×ÓÄ£°æwxml£¬±ãÓÚ¶àÒ³ÃæincludeÒýÓá£
<view class="page">
<include src="/page/common/head.wxml"/>
<view class="weui-msg"> <include
wx:if="{{status == 1}}" src="subpage/wait.wxml"/>
<include wx:elif="{{status == 2}}"
src="subpage/success.wxml"/>
<include wx:elif="{{status == 3}}"
src="subpage/fail.wxml"/> <include
wx:else src="subpage/default.wxml"/>
</view>
</view>
<include src="/page/common/foot.wxml"/> |
Îå¡¢×ܽáÌå»á
¡¾ÌÚѶÓÎÏ·ÈËÉú¡¿Î¢ÐÅС³ÌÐò¿ª·¢ÒѾ½áÊø£¬Ø½´ý²¹³ä²úÆ·Ìõ¿îÒÔ¼°·¢²¼ÉóºËÉÏÏß¡£ÔÚÕû¸öÃþË÷ºÍ¿ª·¢¹ý³ÌÖУ¬Åöµ½ÁËÐí¶àÓëweb¿ª·¢²»Í¬µÄ±ðŤ֮´¦£¬Ò²Ìî¹ý²»ÉÙ¿Ó£¬°üÀ¨²ÎÓëС³ÌÐòʵÏÖµÄÉè¼Æ¡¢Öع¹ºÍǰ¶Ë¿ª·¢¶¼ÊÇÒ»¸öеij¢ÊÔÓëÌåÑé¡£Ò²¶Ô´ËÓÐһЩ˼¿¼ºÍ×ܽᣬ¾ßÌåÈçϹéÄÉ¡£Ä¿Ç°¸Ð¾õС³ÌÐò±È½ÏÊÊÓÃÓÚһЩּÔÚ¸ü¿ìËÙºÍÓÐÐ§ÍÆ¹ã×Ô¼ºÇáÁ¿¹¦ÄܵÄСӦÓÃģʽ£¬²»ÊʺϽϴó½ÏÖØÂß¼ºÍ¹¦ÄܵĿª·¢Ó¦Óᣵ«ÏàÐÅËæ×Å΢ÐŹٷ½¶ÔС³ÌÐòÖ§³ÖÁ¦¶ÈµÄ²»¶ÏÔö¼Ó£¬Ð¡³ÌÐòµÄ¹¦ÄܺÍÍÆ¹ãÒ²½«µÃµ½½øÒ»²½À©´ó£¬½ÓÈëºÍ¿ª·¢³É±¾µÄͬ²½½µµÍ£¬Ò²»áÊܵ½Ô½À´Ô½¶àµÄ¿ª·¢Õß»¶ÓºÍϲ°®¡£

|