站点文件路径(建议看的时候,可以先把这部分内容复制出来,然后再对比文件路径往下看)
.wap
├── app
│ ├── Http
│ │
│ ├── Jobs
│ │ └── Job.php
│ ├── Libs
│ │ ├── Helper.php
│ │ ├── Oauth2.php
│ │ ├── RedisManager.php
│ │ ├── Rest.php
│ │ └── ReturnCode.php
│ ├── Listeners
│ ├── Policies
│ ├── Providers
│ │ ├── AppServiceProvider.php
│ │ ├── AuthServiceProvider.php
│ │ ├── EventServiceProvider.php
│ │ └── RouteServiceProvider.php
│ └── User.php
├── artisan
├── bootstrap
│ ├── app.php
│ ├── autoload.php
│ └── cache
│ └── services.php
├── composer.json
├── composer.lock
├── composer.phar
├── config
├── database
├── gulpfile.js
├── package.json
├── phpunit.xml
├── public
│ ├── about.html
│ ├── assets
│ │ ├── css
│ │ │ ├── wap2
│ │ ├── fonts
│ │ │
│ │ ├── img
│ │ │
│ │ ├── js
│ │ │ ├── lib
│ │ │ │ ├── dropload.js
│ │ │ │ ├── dropload.min.js
│ │ │ │ ├── exif.js
│ │ │ │ ├── exif.min.js
│ │ │ │ ├── global-72b2917f61.js
│ │ │ │ ├── global.js
│ │ │ │ ├── global.min.js
│ │ │ │ ├── helpsell-d362f63460.js
│ │ │ │ ├── helpsell.js
│ │ │ │ ├── helpsell.min.js
│ │ │ │ ├── imgbase64-f823578e4a.js
│ │ │ │ ├── imgbase64.js
│ │ │ │ ├── imgbase64.min.js
│ │ │ │ ├── imglazyLoad2-c72b9ed19d.js
│ │ │ │ ├── imglazyLoad2.js
│ │ │ │ ├── iscroll.js
│ │ │ │ ├── jquery.2.1.4.js
│ │ │ │ ├── jquery.2.1.4.min.js
│ │ │ │ ├── jquery.owl.carousel.js
│ │ │ │ ├── marquee.js
│ │ │ │ ├── mescroll.min.js
│ │ │ │ ├── mescroll.minmore.js
│ │ │ │ ├── mobileSelect2.min.js
│ │ │ │ ├── mobileSelect.js
│ │ │ │ ├── mobileSelect.min.js
│ │ │ │ ├── myglobal-230f5c8a96.js
│ │ │ │ ├── myglobal.js
│ │ │ │ ├── navbarscroll.js
│ │ │ │ ├── pay-cdab138b4a.js
│ │ │ │ ├── pay.js
│ │ │ │ ├── pay.min.js
│ │ │ │ ├── pop2.js
│ │ │ │ ├── pop-e5a9f25d9d.js
│ │ │ │ ├── pop.js
│ │ │ │ ├── pop.min.js
│ │ │ │ ├── sea.config.js
│ │ │ │ ├── sea.config.min.js
│ │ │ │ ├── seajs-css.js
│ │ │ │ ├── sea.min.js
│ │ │ │ ├── sku.min.js
│ │ │ │ ├── sku-wap.min.js
│ │ │ │ ├── sm.js
│ │ │ │ ├── sm.min.js
│ │ │ │ ├── swiper.js
│ │ │ │ ├── swiper.min.js
│ │ │ │ ├── sysnotice-3557666d77.js
│ │ │ │ ├── sysnotice.js
│ │ │ │ ├── template.js
│ │ │ │ ├── template.min.js
│ │ │ │ ├── translate-4c0f2c03d0.js
│ │ │ │ ├── translate.js
│ │ │ │ ├── translate.min.js
│ │ │ │ ├── weixin.js
│ │ │ │ ├── weixin.min.js
│ │ │ │ └── zepto.min.js
│ │ │ ├── modules
│ │ │ │
│ │ │ ├── wap2
│ │ │ │ ├── activity
│ │ │ │ │ ├── a10-f3b9642fca.js
│ │ │ │ │ ├── a10.js
│ │ │ │ │ ├── a10.min.js
│ │ │ │ │ ├── a11-0621620ea7.js
│ │ │ │ │ ├── a11.js
│ │ │ │ │ ├── a11.min.js
│ │ │ │ │ ├── a12-e2d49b0b2e.js
│ │ │ │ │ ├── a12.js
│ │ │ │ │ ├── a12.min.js
│ │ │ │ │ ├── a1-4146f0acea.js
│ │ │ │ │ ├── a1.js
│ │ │ │ │ ├── a1.min.js
│ │ │ │ │ ├── a2-b0478a39ea.js
│ │ │ │ │ ├── a2.js
│ │ │ │ │ ├── a2.min.js
│ │ │ │ │ ├── a3-1a442a13f3.js
│ │ │ │ │ ├── a3.js
│ │ │ │ │ ├── a3.min.js
│ │ │ │ │ ├── a4-b4111d68b8.js
│ │ │ │ │ ├── a4.js
│ │ │ │ │ ├── a4.min.js
│ │ │ │ │ ├── a5-6275acf081.js
│ │ │ │ │ ├── a5.js
│ │ │ │ │ ├── a5.min.js
│ │ │ │ │ ├── a6-a3eaa4f0f2.js
│ │ │ │ │ ├── a6.js
│ │ │ │ │ ├── a6.min.js
│ │ │ │ │ ├── a7-5ca341659f.js
│ │ │ │ │ ├── a7.js
│ │ │ │ │ ├── a7.min.js
│ │ │ │ │ ├── a8-a0f3587be8.js
│ │ │ │ │ ├── a8.js
│ │ │ │ │ ├── a8.min.js
│ │ │ │ │ ├── a9-5eca7504de.js
│ │ │ │ │ ├── a9.js
│ │ │ │ │ └── a9.min.js
│ │ │ │ ├── address
│ │ │ │ │ ├── add-bca9be0413.js
│ │ │ │ │ ├── add.js
│ │ │ │ │ ├── add.min.js
│ │ │ │ │ ├── address_add.js
│ │ │ │ │ ├── address_build.js
│ │ │ │ │ ├── address_city.js
│ │ │ │ │ ├── address_edit.js
│ │ │ │ │ ├── address_list.js
│ │ │ │ │ ├── certify-7f241e75ec.js
│ │ │ │ │ ├── certify.js
│ │ │ │ │ ├── certify.min.js
│ │ │ │ │ ├── edit-371eaea1da.js
│ │ │ │ │ ├── edit.js
│ │ │ │ │ ├── edit.min.js
│ │ │ │ │ ├── list-a386e2d87b.js
│ │ │ │ │ ├── list.js
│ │ │ │ │ └── list.min.js
│ │ │ │ ├── adviceManager
│ │ │ │ │ └── adviceManager.js
│ │ │ │ ├── bank
│ │ │ │ │ ├── add-a5d5e1480b.js
│ │ │ │ │ ├── add.js
│ │ │ │ │ ├── add.min.js
│ │ │ │ │ ├── edit-ff29035f27.js
│ │ │ │ │ ├── edit.js
│ │ │ │ │ ├── edit.min.js
│ │ │ │ │ ├── list-ebc8d4f6fd.js
│ │ │ │ │ ├── list.js
│ │ │ │ │ └── list.min.js
│ │ │ │ ├── common-e435a9b861.js
│ │ │ │ ├── common.js
│ │ │ │ ├── common.min.js
│ │ │ │ ├── coupon
│ │ │ │ │ ├── index-0f089da70f.js
│ │ │ │ │ ├── index.js
│ │ │ │ │ ├── use_coupon-766e5453e1.js
│ │ │ │ │ └── use_coupon.js
│ │ │ │ ├── goods
│ │ │ │ │ ├── brand-9ed389d8fb.js
│ │ │ │ │ ├── brand.js
│ │ │ │ │ ├── brand.min.js
│ │ │ │ │ ├── cate-310ac85ed4.js
│ │ │ │ │ ├── cate.js
│ │ │ │ │ ├── cate.min.js
│ │ │ │ │ ├── detail-caeb32bed9.js
│ │ │ │ │ ├── detail.js
│ │ │ │ │ ├── detail.min.js
│ │ │ │ │ ├── detail-wap.js
│ │ │ │ │ ├── list-06171e3d51.js
│ │ │ │ │ ├── list.js
│ │ │ │ │ ├── list.min.js
│ │ │ │ │ ├── myBrand-68a30db3a6.js
│ │ │ │ │ ├── myBrand.js
│ │ │ │ │ ├── newBrand-e64977a780.js
│ │ │ │ │ ├── newBrand.js
│ │ │ │ │ ├── search-365cf29de2.js
│ │ │ │ │ ├── search.js
│ │ │ │ │ └── search.min.js
│ │ │ │ ├── help
│ │ │ │ │ ├── code-e5c2b24cce.js
│ │ │ │ │ ├── code.js
│ │ │ │ │ └── code.min.js
│ │ │ │ ├── home
│ │ │ │ │ ├── index-636afaaef7.js
│ │ │ │ │ ├── index.js
│ │ │ │ │ └── index.min.js
│ │ │ │ ├── index
│ │ │ │ │ ├── adviceManager.js
│ │ │ │ │ ├── index.js
│ │ │ │ │ ├── index_select_community.js
│ │ │ │ │ ├── recommend_list.js
│ │ │ │ │ ├── rush_list.js
│ │ │ │ │ ├── show_life_list.js
│ │ │ │ │ └── show_news_list.js
│ │ │ │ ├── indexrush
│ │ │ │ │ ├── handlebars-933127c119.js
│ │ │ │ │ ├── handlebars.js
│ │ │ │ │ ├── imglazyLoad2-24c8033a43.js
│ │ │ │ │ ├── imglazyLoad2.js
│ │ │ │ │ ├── index-7966cedd15.js
│ │ │ │ │ ├── index.js
│ │ │ │ │ ├── index_static-34577637be.js
│ │ │ │ │ ├── index_static.js
│ │ │ │ │ ├── jquery-1.11.2.min.js
│ │ │ │ │ ├── jquery-1-d3ed97676b.11.2.min.js
│ │ │ │ │ ├── swiper-33eb826253.min.js
│ │ │ │ │ ├── swiper.min.js
│ │ │ │ │ ├── touch-a8f4147e78.js
│ │ │ │ │ └── touch.js
│ │ │ │ ├── leader
│ │ │ │ │ ├── apply-5e62c45c83.js
│ │ │ │ │ ├── apply.js
│ │ │ │ │ ├── apply.min.js
│ │ │ │ │ ├── member-8848ad2e35.js
│ │ │ │ │ ├── member.js
│ │ │ │ │ ├── member.min.js
│ │ │ │ │ ├── phone-06acfd7c4a.js
│ │ │ │ │ ├── phone.js
│ │ │ │ │ ├── phone.min.js
│ │ │ │ │ ├── sale-f38b280b32.js
│ │ │ │ │ └── sale.min.js
│ │ │ │ ├── login
│ │ │ │ │ ├── forget_password.js
│ │ │ │ │ ├── login.js
│ │ │ │ │ └── vlogin.js
│ │ │ │ ├── meowChannel
│ │ │ │ │ ├── index.js
│ │ │ │ │ └── layer.js
│ │ │ │ ├── msg
│ │ │ │ │ ├── detail-99b39cad14.js
│ │ │ │ │ ├── detail.js
│ │ │ │ │ ├── detail.min.js
│ │ │ │ │ ├── list-de83241017.js
│ │ │ │ │ ├── list.js
│ │ │ │ │ └── list.min.js
│ │ │ │ ├── newindex
│ │ │ │ │ ├── index.js
│ │ │ │ │ ├── moreCateList.js
│ │ │ │ │ ├── shopCategoryList.js
│ │ │ │ │ └── volumeList.js
│ │ │ │ ├── news
│ │ │ │ │ ├── benefit_detail.js
│ │ │ │ │ ├── index.js
│ │ │ │ │ └── shipping_list.js
│ │ │ │ ├── order
│ │ │ │ │ ├── billing.js
│ │ │ │ │ ├── billing_list.js
│ │ │ │ │ ├── billing_log.js
│ │ │ │ │ ├── cart-c7dc7364be.js
│ │ │ │ │ ├── cart.js
│ │ │ │ │ ├── cart.min.js
│ │ │ │ │ ├── confirm-9177c86b1f.js
│ │ │ │ │ ├── confirm.js
│ │ │ │ │ ├── confirm.min.js
│ │ │ │ │ ├── detail-df065ffed5.js
│ │ │ │ │ ├── detail.js
│ │ │ │ │ ├── detail.min.js
│ │ │ │ │ ├── express-6c5d0541fa.js
│ │ │ │ │ ├── express.js
│ │ │ │ │ ├── express.min.js
│ │ │ │ │ ├── list-140c9f680b.js
│ │ │ │ │ ├── list.js
│ │ │ │ │ ├── list.min.js
│ │ │ │ │ ├── order_apply_service.js
│ │ │ │ │ ├── order_detail.js
│ │ │ │ │ ├── order_list2.js
│ │ │ │ │ ├── order_list.js
│ │ │ │ │ ├── order_service.js
│ │ │ │ │ └── shipping_list.js
│ │ │ │ ├── PreOrder
│ │ │ │ │ └── index.js
│ │ │ │ ├── profit
│ │ │ │ │ ├── cash-227c4fd8ff.js
│ │ │ │ │ ├── cash-fail-bd65d66138.js
│ │ │ │ │ ├── cash-fail.js
│ │ │ │ │ ├── cash-fail.min.js
│ │ │ │ │ ├── cash.js
│ │ │ │ │ ├── cash.min.js
│ │ │ │ │ ├── cash-success-a0be2409b8.js
│ │ │ │ │ ├── cash-success.js
│ │ │ │ │ ├── cash-success.min.js
│ │ │ │ │ ├── detail-16d0288b56.js
│ │ │ │ │ ├── detail.js
│ │ │ │ │ ├── detail.min.js
│ │ │ │ │ ├── info-5103b1af93.js
│ │ │ │ │ ├── info.js
│ │ │ │ │ ├── info.min.js
│ │ │ │ │ ├── list-cb5953d3d0.js
│ │ │ │ │ ├── list.js
│ │ │ │ │ ├── list.min.js
│ │ │ │ │ ├── spread-dd1312e2a3.js
│ │ │ │ │ └── spread.min.js
│ │ │ │ ├── property
│ │ │ │ │ ├── property_repair_evaluate.js
│ │ │ │ │ └── repair_submit.js
│ │ │ │ ├── property_repair
│ │ │ │ │ └── list.js
│ │ │ │ ├── qrcode
│ │ │ │ │ ├── shop-2637683116.js
│ │ │ │ │ ├── shop.js
│ │ │ │ │ └── shop.min.js
│ │ │ │ ├── register
│ │ │ │ │ ├── registercertify.js
│ │ │ │ │ ├── register.js
│ │ │ │ │ ├── registertype.js
│ │ │ │ │ ├── selectcommunity.js
│ │ │ │ │ └── selectcommunitymobile.js
│ │ │ │ ├── sale
│ │ │ │ │ └── saleList.js
│ │ │ │ ├── seckill
│ │ │ │ │ ├── index-14c65c4c82.js
│ │ │ │ │ ├── index.js
│ │ │ │ │ ├── seckill_detail-ab78feccc7.js
│ │ │ │ │ └── seckill_detail.js
│ │ │ │ ├── secondsKill
│ │ │ │ │ ├── index.js
│ │ │ │ │ └── TouchSlide.1.1.source.js
│ │ │ │ ├── seller
│ │ │ │ │ ├── leader-d288b18686.js
│ │ │ │ │ ├── leader.js
│ │ │ │ │ ├── leader.min.js
│ │ │ │ │ ├── list-c8cc9757cf.js
│ │ │ │ │ ├── list.js
│ │ │ │ │ └── list.min.js
│ │ │ │ ├── set
│ │ │ │ │ ├── list-1b9b316ceb.js
│ │ │ │ │ ├── list.js
│ │ │ │ │ └── list.min.js
│ │ │ │ ├── shopCategory
│ │ │ │ │ ├── index-ea61c2648d.js
│ │ │ │ │ └── index.js
│ │ │ │ ├── shopIndex
│ │ │ │ │ ├── index-c850d4c28b.js
│ │ │ │ │ ├── index.js
│ │ │ │ │ ├── list-661088e635.js
│ │ │ │ │ ├── list.js
│ │ │ │ │ ├── list.min.js
│ │ │ │ │ ├── recommendList-0a6304009c.js
│ │ │ │ │ ├── recommendList.js
│ │ │ │ │ ├── shopCategory-212d345760.js
│ │ │ │ │ ├── shopCategory.js
│ │ │ │ │ └── shopIndex_list-41b0cbe25e.js
│ │ │ │ ├── spellGroup
│ │ │ │ │ ├── detail.js
│ │ │ │ │ ├── draw_order_details.js
│ │ │ │ │ ├── index.js
│ │ │ │ │ ├── spelling_detail.js
│ │ │ │ │ └── spell_order_details.js
│ │ │ │ ├── subject
│ │ │ │ │ ├── index-4439b25fc3.js
│ │ │ │ │ └── index.js
│ │ │ │ ├── team
│ │ │ │ │ ├── goodsdetail-da8b8eb469.js
│ │ │ │ │ ├── goodsdetail.js
│ │ │ │ │ ├── goodsdetail.min.js
│ │ │ │ │ ├── goodslist-d70d90fe29.js
│ │ │ │ │ ├── goodslist.js
│ │ │ │ │ ├── goodslist.min.js
│ │ │ │ │ ├── payed-ac5d44f073.js
│ │ │ │ │ ├── payed.js
│ │ │ │ │ ├── payed.min.js
│ │ │ │ │ ├── share-ee434089e0.js
│ │ │ │ │ ├── share.js
│ │ │ │ │ ├── share.min.js
│ │ │ │ │ ├── teamdetail-f1415cf883.js
│ │ │ │ │ ├── teamdetail.js
│ │ │ │ │ ├── teamdetail.min.js
│ │ │ │ │ ├── teamlist-c490ff2cd6.js
│ │ │ │ │ ├── teamlist.js
│ │ │ │ │ └── teamlist.min.js
│ │ │ │ ├── testmy
│ │ │ │ │ └── index.js
│ │ │ │ ├── user
│ │ │ │ │ ├── about.js
│ │ │ │ │ ├── center-be0ea9a88f.js
│ │ │ │ │ ├── center.js
│ │ │ │ │ ├── center.min.js
│ │ │ │ │ ├── certify-1c4ad4d379.js
│ │ │ │ │ ├── certify.js
│ │ │ │ │ ├── certify.min.js
│ │ │ │ │ ├── change_password.js
│ │ │ │ │ ├── collect-4.js
│ │ │ │ │ ├── collect-ef66a98dd5.js
│ │ │ │ │ ├── collect.js
│ │ │ │ │ ├── collect.min.js
│ │ │ │ │ ├── coupon.js
│ │ │ │ │ ├── feedback.js
│ │ │ │ │ ├── integral.js
│ │ │ │ │ ├── invite_code.js
│ │ │ │ │ ├── order_coupon.js
│ │ │ │ │ ├── setting.js
│ │ │ │ │ ├── user_img.js
│ │ │ │ │ ├── user_info.js
│ │ │ │ │ ├── user_name.js
│ │ │ │ │ └── wallet.js
│ │ │ │ └── withdraw
│ │ │ │ ├── apply-fd7fb08a21.js
│ │ │ │ ├── apply.js
│ │ │ │ ├── apply.min.js
│ │ │ │ ├── fail-165bdf2d41.js
│ │ │ │ ├── fail.js
│ │ │ │ ├── fail.min.js
│ │ │ │ ├── LArea-468875ed91.js
│ │ │ │ ├── LArea.js
│ │ │ │ ├── phone-e4156fc77d.js
│ │ │ │ ├── phone.js
│ │ │ │ ├── phone.min.js
│ │ │ │ ├── success-8b5037e5b7.js
│ │ │ │ ├── success.js
│ │ │ │ └── success.min.js
│ │ │
│ │ └── less
│ │
│ ├── bank.html
│ ├── bg.jpg
│ ├── code0.png
│ ├── code1.png
│ ├── coupon.png
│ ├── cs.php
│ ├── favicon.ico
│ ├── help0.jpg
│ ├── help1.jpg
│ ├── icon-nocoupon.png
│ ├── index.php
│ ├── info.php
│ ├── logo.png
│ ├── MP_verify_9e2H8EyymHnANZOQ.txt
│ ├── MP_verify_ZrkVNOTjourEX7oY.txt
│ ├── oauth.php
│ ├── pay.html
│ ├── pc.html
│ ├── php_errors.log
│ ├── register.html
│ ├── robots.txt
├── README.md
├── resources
│ ├── assets
│ ├── lang
│ └── views
│ ├── errors
│ │ └── 503.blade.php
│ ├── wap
│ │ ├── activity
│ │ │ ├── a10.blade.php
│ │ │ ├── a1.blade.php
│ │ │ ├── a2.blade.php
│ │ │ ├── a3.blade.php
│ │ │ ├── a4.blade.php
│ │ │ ├── a5.blade.php
│ │ │ ├── a6.blade.php
│ │ │ ├── a7.blade.php
│ │ │ ├── a8.blade.php
│ │ │ ├── a9.blade.php
│ │ │ └── recommend.blade.php
│ │ ├── address
│ │ │ ├── add.blade.php
│ │ │ ├── certify.blade.php
│ │ │ ├── edit.blade.php
│ │ │ └── list.blade.php
│ │ ├── error
│ │ │ ├── 401.blade.php
│ │ │ ├── 404.blade.php
│ │ │ └── 503.blade.php
│ │ ├── goods
│ │ │ ├── cate.blade.php
│ │ │ └── detail.blade.php
│ │ ├── help
│ │ │ └── code.blade.php
│ │ ├── home
│ │ │ └── index.blade.php
│ │ ├── index
│ │ │ ├── index.blade.php
│ │ │ ├── showNewsDetail.blade.php
│ │ │ └── showNewsList.blade.php
│ │ ├── layouts
│ │ │ ├── masterapp.blade.php
│ │ │ └── master.blade.php
│ │ ├── order
│ │ │ ├── cart.blade.php
│ │ │ ├── confirm.blade.php
│ │ │ ├── detail.blade.php
│ │ │ ├── express.blade.php
│ │ │ └── list.blade.php
│ │ ├── seller
│ │ │ ├── leader.blade.php
│ │ │ └── list.blade.php
│ │ ├── team
│ │ │ ├── goodsdetail.blade.php
│ │ │ ├── goodslist.blade.php
│ │ │ ├── payed.blade.php
│ │ │ ├── rule.blade.php
│ │ │ ├── share.blade.php
│ │ │ ├── teamdetail.blade.php
│ │ │ └── teamlist.blade.php
│ │ └── user
│ │ ├── center.blade.php
│ │ └── collect.blade.php
│ ├── wap2
│ │ ├── about
│ │ │ └── subscribe.blade.php
│ │ ├── aboutus
│ │ │ └── aboutus.blade.php
│ │ ├── activity
│ │ │ ├── a10.blade.php
│ │ │ ├── a1.blade.php
│ │ │ ├── a2.blade.php
│ │ │ ├── a3.blade.php
│ │ │ ├── a4.blade.php
│ │ │ ├── a5.blade.php
│ │ │ ├── a6.blade.php
│ │ │ ├── a7.blade.php
│ │ │ ├── a8.blade.php
│ │ │ ├── a9.blade.php
│ │ │ └── recommend.blade.php
│ │ ├── address
│ │ │ ├── add.blade.php
│ │ │ ├── address_add.blade.php
│ │ │ ├── address_build.blade.php
│ │ │ ├── address_city.blade.php
│ │ │ ├── address_edit.blade.php
│ │ │ ├── address_list.blade.php
│ │ │ ├── certify.blade.php
│ │ │ ├── edit.blade.php
│ │ │ └── list.blade.php
│ │ ├── adviceManager
│ │ │ └── adviceManagerDetail.blade.php
│ │ ├── bank
│ │ │ ├── add.blade.php
│ │ │ ├── edit.blade.php
│ │ │ └── list.blade.php
│ │ ├── coupon
│ │ │ ├── index.blade.php
│ │ │ └── use_coupon.blade.php
│ │ ├── error
│ │ │ ├── 401.blade.php
│ │ │ ├── 404.blade.php
│ │ │ └── 503.blade.php
│ │ ├── goods
│ │ │ ├── brand.blade.php
│ │ │ ├── cate.blade.php
│ │ │ ├── detail.blade.php
│ │ │ ├── list.blade.php
│ │ │ ├── myBrand.blade.php
│ │ │ ├── search.blade.php
│ │ │ └── wxGoodsDetail.blade.php
│ │ ├── home
│ │ │ └── index.blade.php
│ │ ├── index
│ │ │ ├── article_goods_list.blade.php
│ │ │ ├── home_index.blade.php
│ │ │ ├── index.blade.php
│ │ │ ├── indexSelectCommunity.blade.php
│ │ │ ├── recommendList.blade.php
│ │ │ ├── rushList.blade.php
│ │ │ ├── showLifeDetail.blade.php
│ │ │ ├── showLifeList.blade.php
│ │ │ ├── showNewsDetail.blade.php
│ │ │ └── showNewsList.blade.php
│ │ ├── leader
│ │ │ ├── apply.blade.php
│ │ │ ├── member.blade.php
│ │ │ ├── phone.blade.php
│ │ │ └── sale.blade.php
│ │ ├── login
│ │ │ ├── forgetPassword.blade.php
│ │ │ ├── login.blade.php
│ │ │ └── vlogin.blade.php
│ │ ├── meowChannel
│ │ │ ├── luckyDraw.blade.php
│ │ │ └── meowChannel.blade.php
│ │ ├── msg
│ │ │ ├── detail.blade.php
│ │ │ └── list.blade.php
│ │ ├── newIndex
│ │ │ ├── moreGoods.blade.php
│ │ │ ├── newIndex.blade.php
│ │ │ ├── shopcategoryList.blade.php
│ │ │ └── volumeList.blade.php
│ │ ├── news
│ │ │ ├── benefit_detail.blade.php
│ │ │ ├── index.blade.php
│ │ │ └── shipping_list.blade.php
│ │ ├── order
│ │ │ ├── billing.blade.php
│ │ │ ├── billing_list.blade.php
│ │ │ ├── billing_log.blade.php
│ │ │ ├── cart.blade.php
│ │ │ ├── confirm.blade.php
│ │ │ ├── detail.blade.php
│ │ │ ├── express.blade.php
│ │ │ ├── list.blade.php
│ │ │ ├── order_apply_service.blade.php
│ │ │ ├── order_detail.blade.php
│ │ │ ├── order_list.blade.php
│ │ │ ├── order_service.blade.php
│ │ │ └── shipping_list.blade.php
│ │ ├── preOrder
│ │ │ └── preOrder.blade.php
│ │ ├── profit
│ │ │ ├── cash.blade.php
│ │ │ ├── cash-fail.blade.php
│ │ │ ├── cash-success.blade.php
│ │ │ ├── detail.blade.php
│ │ │ ├── info.blade.php
│ │ │ ├── list.blade.php
│ │ │ └── spread.blade.php
│ │ ├── property
│ │ │ ├── index.blade.php
│ │ │ ├── property_parking_add.blade.php
│ │ │ ├── property_parking.blade.php
│ │ │ ├── property_parking_number.blade.php
│ │ │ ├── property_parking_pay2.blade.php
│ │ │ ├── property_parking_pay.blade.php
│ │ │ ├── property_parking_recharge2.blade.php
│ │ │ ├── property_parking_recharge.blade.php
│ │ │ ├── property_pay_address.blade.php
│ │ │ ├── property_pay.blade.php
│ │ │ ├── property_pay_page.blade.php
│ │ │ ├── property_pay_record.blade.php
│ │ │ ├── property_repair.blade.php
│ │ │ ├── property_repair_evaluate.blade.php
│ │ │ └── property_repair_submit.blade.php
│ │ ├── qrcode
│ │ │ └── shop.blade.php
│ │ ├── register
│ │ │ ├── register.blade.php
│ │ │ ├── registeredCertification.blade.php
│ │ │ ├── registerType.blade.php
│ │ │ ├── selectCommunity.blade.php
│ │ │ └── vlogin.blade.php
│ │ ├── sale
│ │ │ ├── saleDetail.blade.php
│ │ │ └── saleList.blade.php
│ │ ├── secondsKill
│ │ │ ├── killDetail.blade.php
│ │ │ └── secondsKill.blade.php
│ │ ├── set
│ │ │ └── list.blade.php
│ │ ├── shopCategory
│ │ │ └── index.blade.php
│ │ ├── shopIndex
│ │ │ ├── list.blade.php
│ │ │ ├── recommendList.blade.php
│ │ │ ├── shopCategory.blade.php
│ │ │ └── shopIndex.blade.php
│ │ ├── spellGroup
│ │ │ ├── disassembly.blade.php
│ │ │ ├── drawOrderDetails.blade.php
│ │ │ ├── failureDetail.blade.php
│ │ │ ├── paymentResult.blade.php
│ │ │ ├── spellDetail.blade.php
│ │ │ ├── spellGroup.blade.php
│ │ │ ├── spellingDetail.blade.php
│ │ │ ├── spellOrderDetails.blade.php
│ │ │ ├── spellRules.blade.php
│ │ │ └── successDetail.blade.php
│ │ ├── subject
│ │ │ └── index.blade.php
│ │ ├── team
│ │ │ ├── goodsdetail.blade.php
│ │ │ ├── goodslist.blade.php
│ │ │ ├── payed.blade.php
│ │ │ ├── rule.blade.php
│ │ │ ├── share.blade.php
│ │ │ ├── teamdetail.blade.php
│ │ │ └── teamlist.blade.php
│ │ ├── test
│ │ │ └── autofocus.blade.php
│ │ ├── testmy
│ │ │ └── index.blade.php
│ │ ├── user
│ │ │ ├── about.blade.php
│ │ │ ├── center.blade.php
│ │ │ ├── certify.blade.php
│ │ │ ├── change_password.blade.php
│ │ │ ├── collect.blade.php
│ │ │ ├── coupon.blade.php
│ │ │ ├── feedback.blade.php
│ │ │ ├── help.blade.php
│ │ │ ├── integral.blade.php
│ │ │ ├── inviteCode.blade.php
│ │ │ ├── myCollection.blade.php
│ │ │ ├── newcenter.blade.php
│ │ │ ├── order_coupon.blade.php
│ │ │ ├── setting.blade.php
│ │ │ ├── user_img.blade.php
│ │ │ ├── user_info.blade.php
│ │ │ ├── user_name.blade.php
│ │ │ └── wallet.blade.php
│ │ └── withdraw
│ │ ├── apply.blade.php
│ │ ├── fail.blade.php
│ │ ├── phone.blade.php
│ │ └── success.blade.php
│ └── welcome.blade.php
├── server.php
├── storage
│
├── tests
│
└── vendor
使用seajs封装dropload.js,上拉刷新插件
文件路径:wap\public\assets\js\lib\dropload.js
define(function(require,exports,module){
var $ = require('jquery');
module.exports = {
Init : function(){
this.start($);
},
start :function ($){
'use strict';
var win = window;
var doc = document;
var $win = $(win);
var $doc = $(doc);
$.fn.dropload = function(options){
return new MyDropLoad(this, options);
};
var MyDropLoad = function(element, options){
var me = this;
me.$element = element;
// 上方是否插入DOM
me.upInsertDOM = false;
// loading状态
me.loading = false;
// 是否锁定
me.isLockUp = false;
me.isLockDown = false;
// 是否有数据
me.isData = true;
me._scrollTop = 0;
me._threshold = 0;
me.init(options);
};
// 初始化
MyDropLoad.prototype.init = function(options){
var me = this;
me.opts = $.extend(true, {}, {
scrollArea : me.$element, // 滑动区域
domUp : { // 上方DOM
domClass : 'dropload-up',
domRefresh : '<div class="dropload-refresh">↓下拉刷新</div>',
domUpdate : '<div class="dropload-update">↑释放更新</div>',
domLoad : '<div class="dropload-load"><span class="loading"></span>加载中...</div>'
},
domDown : { // 下方DOM
domClass : 'dropload-down',
domRefresh : '<div class="dropload-refresh">↑上拉加载更多</div>',
domLoad : '<div class="dropload-load"><span class="loading"></span>加载中...</div>',
domNoData : '<div class="dropload-noData">暂无数据</div>'
},
autoLoad : true, // 自动加载
distance : 50, // 拉动距离
threshold : '', // 提前加载距离
loadUpFn : '', // 上方function
loadDownFn : '', // 下方function
domLoadFlag:true 首次加载是否显示加载标识默认显示
}, options);
// 如果加载下方,事先在下方插入DOM
if(me.opts.loadDownFn != ''){
me.$element.append('<div class="'+me.opts.domDown.domClass+'">'+me.opts.domDown.domRefresh+'</div>');
me.$domDown = $('.'+me.opts.domDown.domClass);
}
// 计算提前加载距离
if(!!me.$domDown && me.opts.threshold === ''){
// 默认滑到加载区2/3处时加载
me._threshold = Math.floor(me.$domDown.height()*1/3);
}else{
me._threshold = me.opts.threshold;
}
// 判断滚动区域
if(me.opts.scrollArea == win){
me.$scrollArea = $win;
// 获取文档高度
me._scrollContentHeight = $doc.height();
// 获取win显示区高度 —— 这里有坑
me._scrollWindowHeight = doc.documentElement.clientHeight;
}else{
me.$scrollArea = me.opts.scrollArea;
me._scrollContentHeight = me.$element[0].scrollHeight;
me._scrollWindowHeight = me.$element.height();
}
fnAutoLoad(me);
// 窗口调整
$win.on('resize',function(){
if(me.opts.scrollArea == win){
// 重新获取win显示区高度
me._scrollWindowHeight = win.innerHeight;
}else{
me._scrollWindowHeight = me.$element.height();
}
});
// 绑定触摸
me.$element.on('touchstart',function(e){
if(!me.loading){
fnTouches(e);
fnTouchstart(e, me);
}
});
me.$element.on('touchmove',function(e){
if(!me.loading){
fnTouches(e, me);
fnTouchmove(e, me);
}
});
me.$element.on('touchend',function(){
if(!me.loading){
fnTouchend(me);
}
});
// 加载下方
me.$scrollArea.on('scroll',function(){
me._scrollTop = me.$scrollArea.scrollTop();
// 滚动页面触发加载数据
if(me.opts.loadDownFn != '' && !me.loading && !me.isLockDown && (me._scrollContentHeight - me._threshold) <= (me._scrollWindowHeight + me._scrollTop)){
loadDown(me);
}
});
};
// touches
function fnTouches(e){
if(!e.touches){
e.touches = e.originalEvent.touches;
}
}
// touchstart
function fnTouchstart(e, me){
me._startY = e.touches[0].pageY;
// 记住触摸时的scrolltop值
me.touchScrollTop = me.$scrollArea.scrollTop();
}
// touchmove
function fnTouchmove(e, me){
me._curY = e.touches[0].pageY;
me._moveY = me._curY - me._startY;
if(me._moveY > 0){
me.direction = 'down';
}else if(me._moveY < 0){
me.direction = 'up';
}
var _absMoveY = Math.abs(me._moveY);
// 加载上方
if(me.opts.loadUpFn != '' && me.touchScrollTop <= 0 && me.direction == 'down' && !me.isLockUp){
e.preventDefault();
me.$domUp = $('.'+me.opts.domUp.domClass);
// 如果加载区没有DOM
if(!me.upInsertDOM){
me.$element.prepend('<div class="'+me.opts.domUp.domClass+'"></div>');
me.upInsertDOM = true;
}
fnTransition(me.$domUp,0);
// 下拉
if(_absMoveY <= me.opts.distance){
me._offsetY = _absMoveY;
// todo:move时会不断清空、增加dom,有可能影响性能,下同
me.$domUp.html(me.opts.domUp.domRefresh);
// 指定距离 < 下拉距离 < 指定距离*2
}else if(_absMoveY > me.opts.distance && _absMoveY <= me.opts.distance*2){
me._offsetY = me.opts.distance+(_absMoveY-me.opts.distance)*0.5;
me.$domUp.html(me.opts.domUp.domUpdate);
// 下拉距离 > 指定距离*2
}else{
me._offsetY = me.opts.distance+me.opts.distance*0.5+(_absMoveY-me.opts.distance*2)*0.2;
}
me.$domUp.css({'height': me._offsetY});
}
}
// touchend
function fnTouchend(me){
var _absMoveY = Math.abs(me._moveY);
if(me.opts.loadUpFn != '' && me.touchScrollTop <= 0 && me.direction == 'down' && !me.isLockUp){
fnTransition(me.$domUp,300);
if(_absMoveY > me.opts.distance){
me.$domUp.css({'height':me.$domUp.children().height()});
me.$domUp.html(me.opts.domUp.domLoad);
me.loading = true;
me.opts.loadUpFn(me);
}else{
me.$domUp.css({'height':'0'}).on('webkitTransitionEnd mozTransitionEnd transitionend',function(){
me.upInsertDOM = false;
$(this).remove();
});
}
me._moveY = 0;
}
}
// 如果文档高度不大于窗口高度,数据较少,自动加载下方数据
function fnAutoLoad(me){
if(me.opts.autoLoad){
if((me._scrollContentHeight - me._threshold) <= me._scrollWindowHeight){
loadDown(me);
}
}
}
// 重新获取文档高度
function fnRecoverContentHeight(me){
if(me.opts.scrollArea == win){
me._scrollContentHeight = $doc.height();
}else{
me._scrollContentHeight = me.$element[0].scrollHeight;
}
}
// 加载下方
function loadDown(me){
me.direction = 'up';
if(me.opts.domLoadFlag){
me.$domDown.html(me.opts.domDown.domLoad);
}else {
me.opts.domLoadFlag=true;
}
me.loading = true;
me.opts.loadDownFn(me);
}
// 锁定
MyDropLoad.prototype.lock = function(direction){
var me = this;
// 如果不指定方向
if(direction === undefined){
// 如果操作方向向上
if(me.direction == 'up'){
me.isLockDown = true;
// 如果操作方向向下
}else if(me.direction == 'down'){
me.isLockUp = true;
}else{
me.isLockUp = true;
me.isLockDown = true;
}
// 如果指定锁上方
}else if(direction == 'up'){
me.isLockUp = true;
// 如果指定锁下方
}else if(direction == 'down'){
me.isLockDown = true;
// 为了解决DEMO5中tab效果bug,因为滑动到下面,再滑上去点tab,direction=down,所以有bug
me.direction = 'up';
}
};
// 解锁
MyDropLoad.prototype.unlock = function(){
var me = this;
// 简单粗暴解锁
me.isLockUp = false;
me.isLockDown = false;
// 为了解决DEMO5中tab效果bug,因为滑动到下面,再滑上去点tab,direction=down,所以有bug
me.direction = 'up';
};
// 无数据
MyDropLoad.prototype.noData = function(flag){
var me = this;
if(flag === undefined || flag == true){
me.isData = false;
}else if(flag == false){
me.isData = true;
}
};
// 重置
MyDropLoad.prototype.resetload = function(){
var me = this;
if(me.direction == 'down' && me.upInsertDOM){
me.$domUp.css({'height':'0'}).on('webkitTransitionEnd mozTransitionEnd transitionend',function(){
me.loading = false;
me.upInsertDOM = false;
$(this).remove();
fnRecoverContentHeight(me);
});
}else if(me.direction == 'up'){
me.loading = false;
// 如果有数据
if(me.isData){
// 加载区修改样式
me.$domDown.html(me.opts.domDown.domRefresh);
fnRecoverContentHeight(me);
fnAutoLoad(me);
}else{
// 如果没数据
me.$domDown.html(me.opts.domDown.domNoData);
}
}
};
// css过渡
function fnTransition(dom,num){
dom.css({
'-webkit-transition':'all '+num+'ms',
'transition':'all '+num+'ms'
});
}
}
}
})
seaj.config配置dropload插件
文件路径:wap\public\assets\js\lib\sea.config.js
!function () {
seajs.config({
paths: {front: _global.url.front + "/assets"},
alias: {
jquery: "front/js/lib/jquery.2.1.4.min.js",
droploadsea: "front/js/lib/dropload.js"
},
//map: [[".js", ".js?t\x3d" + parseInt((new Date).getTime())]]//测试
map: [[".js", ".js?v\x3d" +"9"]]//线下
})
}();
首页index.js引入上拉刷新插件
文件路径:wap\public\assets\js\wap2\newindex\index.js
/*
author : zero,
desc : 首页
*/
seajs.use([
'jquery',
'droploadsea'
], function ($,dropload) {
function Start() {
//初始化上拉加载插件,这个很重要,否则$对象将不会有dropload函数,最终导致插件无法执行
dropload.Init();
this.Init();
}
Start.prototype = {
Init: function () {
var _this = this;
_this.Render();
},
Render: function () {
var _this = this;
//上拉刷新
_this.updateList();
},
updateList: function () {
var _this = this;
var page = 1, size = 10;
var dropload = $('.page-group').dropload({
scrollArea: window,
domDown: {
domClass: 'dropload-down',
domRefresh: '<div class="dropload-refresh" style="display: none;">上拉加载更多</div>',
domLoad: '<div class="dropload-load"><span class="loading"></span>加载中...</div>',
domNoData: '<div class="dropload-noData">===我是有底线的===</div>'
},
threshold: 100,
domLoadFlag: false,//首次加载是否显示加载标识
loadDownFn: function (me) {
//setTimeout(function () {
_.ajaxApi('api/shop_goods_recommend', 'get', {page: page, size: size}, function (res) {
if (res.code == 0) {
var data = res.data;
if (data.length > 0) {
$("#goods_recommend").show();
var html = template('tpl-recommend', {recommend: data});
$('.goods_recommend_list').append(html);
_this.Event();
page++;
// 即使加载出错,也得重置
me.resetload();
} else {
if (page == 1) {
$("#goods_recommend").hide();
}
me.lock();
me.noData();
me.resetload();
return true;
}
} else {
$("#goods_recommend").hide();
me.lock();
me.noData();
me.resetload();
}
}, true, false);
//}, 500);
}
});
}
}
new Start();
})
该示例需要对js,jquery,seajs用法有基本了解,同时,该示例是用在laravel5.6框架中的,其他框架用法基本相同,只是文件路径可能有所变化,如有疑问,请在评论区留言,会尽力解答