Performance Optimization of the Five-Star Store Mini Program: A Comprehensive Case Study
This article details the background, actions, and future outlook of performance and experience optimization for the Five-Star Store mini program, covering template handling, JS error reduction, rendering speed improvements, package size reduction, and systematic testing and iteration mechanisms across multiple device platforms.
Background : The Five-Star Store mini program serves the offline store transaction scenario across 79 cities and 267 stores, leveraging the Taro cross‑platform solution to achieve a single codebase for JD App and WeChat Mini Program, significantly boosting development efficiency.
Current Situation : Rapid business expansion increased store numbers and user traffic, prompting the need for mechanisms to gather frontline feedback, conduct internal experience walk‑throughs, and continuously improve the mini program.
Specific Actions :
Implemented a template loading workflow using MCube to decide when to fetch the latest template and render the view tree.
Reduced JavaScript error rate from an average of 1,374 errors per week to 260, cutting error occurrences by about 81%.
Optimized page rendering speed: product detail page +28%, cart page +20%, checkout page +25.4% across devices such as iPhone 14 Pro, OnePlus 9, Huawei Nova 8, and Redmi.
Decreased total package size from 5.92 MB to 5.32 MB (≈10% reduction) and main package size from 1.53 MB to 0.27 MB (≈17.6% reduction) by removing redundant code, consolidating common modules, and moving high‑traffic pages to the main bundle.
Established a daily experience walk‑through mechanism based on Nielsen’s usability principles, defining severity levels, evaluation standards, and a structured review process involving developers, designers, and product managers.
Adopted performance‑oriented coding practices: replaced ScrollView with View for scrolling, used React.memo and CustomWrapper to limit unnecessary re‑renders, preloaded banner images with Taro.preload , and shifted data fetching from useDidShow to useEffect to avoid redundant network calls.
Implemented a systematic optimization iteration mechanism, collecting improvement items from user feedback, internal testing, and large‑scale promotion periods, prioritizing critical pages, and integrating changes through coordinated planning, development, testing, and release cycles.
Future Outlook :
Continue to gather frontline feedback and refine the daily walk‑through and iteration processes.
Upgrade the project framework (targeted for March 2024) to improve compilation speed and developer productivity.
Further shrink package size to meet mini‑program constraints.
Maintain low JS error rates and improve mini‑program open rates through proactive monitoring and code quality practices.
Overall, the systematic performance and quality improvements have markedly enhanced user experience, bringing the mini program closer to native‑app performance.
JD Tech
Official JD technology sharing platform. All the cutting‑edge JD tech, innovative insights, and open‑source solutions you’re looking for, all in one place.
How this landed with the community
Was this worth your time?
0 Comments
Thoughtful readers leave field notes, pushback, and hard-won operational detail here.