Skip to content
Created: December 25, 2017

1. Early preparation stage (easy to underestimate, but very critical) ​

1️⃣ Mini Program Account & Qualifications ​

Key Node

  • Register a WeChat public platform mini program account
  • Subject type: individual/enterprise/government/other organization
  • Do you need category qualifications (e-commerce, medical, education, content, etc.)

Notes

  • ❗ The category determines whether you can go online, it is not something you can make up later.

  • Many personal subject restrictions (payment, some APIs, promotion)

  • Business entity:

    • WeChat Pay
    • Subscribe to news
    • Live broadcast/advertisement
  • The name can only be changed twice a year (be careful)

2️⃣ Technology selection (determines your future development experience) ​

Common solutions

TypeSolutionApplicable scenarios
NativeNative appletLightweight, performance first
FrameworkTaroReact / Vue cross-end
Frameworkuni-appVue system
Frameworkmpvue (deprecated)❌ Not recommended

Notes

  • Native ≠ slow, but high maintenance cost

  • Cross-end framework:

    • Debugging is complex
    • There are pitfalls in API differences
  • ❗Don’t sacrifice the mini program experience for “cross-terminal”

2. Project initialization stage ​

3️⃣ Create project ​

Key Node

  • WeChat Developer Tools
  • Bind AppID
  • Choose whether to enable cloud development

Notes

  • Cloud development is suitable for:

    • Quick MVP
    • small team
  • Cloud development is not suitable for:

    • High concurrency
    • Strong business logic
    • private deployment

4️⃣ Directory structure design (very important) ​

Suggested Structure

/pages
  /home
  /detail
/components
  /NavBar
  /List
/services
  api.js
/store
  index.js
/utils
  request.js
  auth.js

Notes

  • ❌ Don’t write all your business in the page
  • Componentization = performance + maintainability
  • Plan "public components/business components" in advance

3. Core development stage (key points) ​

5️⃣ Page & Route Design ​

Key Node

  • app.json
  • The page path is fixed and cannot be dynamically registered.

Notes

  • Once the page path is online, do not change it casually
  • Page count > 100 will have performance and maintenance issues
  • tabBar page = resident memory (caution)

6️⃣ Data communication & network requests ​

Key Node

  • wx.request
  • backend interface
  • Login state maintenance

Notes

  • ❗ WeChat request Skip browser cookies
  • Login process:
wx.login → code → 后端换 openid / session_key
  • Be sure to do:

    • Token expiration processing
    • Idempotent processing
  • Request concurrency limit (default 10)

7️⃣ Status management ​

Common solutions

  • Page data
  • GlobalApp.globalData
  • MobX/Redux (rare)
  • Encapsulate the store yourself

Notes

  • Mini program setData is a performance bottleneck

  • ❌ Large objects frequently setData

  • Suggestions:

    • Page local state
    • Only necessary information (user/token) is stored globally

8️⃣ Life cycle & page stack ​

Key Node

  • App life cycle
  • Page life cycle
  • Page stack maximum 10 levels

Notes

  • onShow ≠ page reload
  • onHide is not destroyed
  • Page return may not trigger onLoad
  • ❗Memory leak: timer/listener not cleaned

4. Performance & experience optimization (must be done before going online) ​

9️⃣ Key points in performance optimization ​

Key Directions

  • setData frequency
  • Image loading
  • Packet volume

Notes

  • Main package ≤ 2MB

  • Subpackage loading (very important)

  • Picture:

    • webp
    • CDN
  • List:

    • virtual list
    • Throttle/anti-shake

🔟 Permissions & Authorization (very easy to be rejected) ​

Key Node

  • User authorization (avatar, mobile phone number, location)

Notes

  • ❌ You cannot ask for authorization as soon as you come in.
  • You must "request it when you need it"
  • There must be an authorization pop-up window clear statement of purpose
  • The mobile phone number must be in WeChat official capacity

5. Security & Compliance (the review is now very strict) ​

1️⃣1️⃣ Safe ​

Key Points

  • https
  • Interface signature
  • Anti-brush

Notes

  • ❌ Don’t write the secret in the front end
  • Don’t trust any parameters passed by the front end
  • Payment must be made through the server

1️⃣2️⃣ Compliance ​

Key Points

  • privacy policy
  • User data description

Notes

  • Must have:

    • Privacy Policy Page
    • Data usage description
  • Used:

    • Positioning
    • Mobile phone number
    • photo album → All should be reflected in the privacy agreement

6. Testing & Release Phase ​

1️⃣3️⃣ Test ​

Key Node

  • Real machine test (low-end machine)
  • Different WeChat versions
  • Network abnormality

Notes

  • Simulator ≠ real machine
  • iOS / Android behave differently
  • Abnormal networks must be revealed

1️⃣4️⃣ Submit for review & publish ​

Key Node

  • Trial version
  • Audit version
  • Officially released

Notes

  • Audit failures are common, don’t panic

  • Common reasons for rejection:

    • induced authorization
    • Category does not match
    • Function description is unclear
  • The description should clearly describe the core functions

7. Long-term precautions after going online ​

1️⃣5️⃣ Operation & Maintenance ​

Key Points

  • Data burying point
  • Abnormal monitoring
  • Version rollback

Notes

  • Mini program ≠ one-time project
  • User path is very short
  • First screen experience > All features

sum up one sentence ​

The difficulty in mini program development is not in writing the page, but in "rules, performance, and compliance"

If you want, I can continue to help you:

  • 🧱 Design Mini Program Project Template
  • 🧠 Disassemble a technical architecture of a real project
  • 🚀 Give you a Pre-launch Checklist
  • 🔥 Combined with React / Vue thinking control applet development

You are now: 👉 Preparing for project approval 👉 Already writing 👉 Go online soon / Have you ever been rejected?

I can dig deeper based on your current stage.