Implementing a Vue.js Wishlist in 1C-Bitrix Without Page Reload

Vue.js + 1C-Bitrix: Wishlist Without Page Reload - In online stores on 1C-Bitrix lacking a wishlist, users often rely on comparison lists or cart. Both cause page reloads, wasting 2-3 seconds per action. The default component doesn't support guests, leading to workarounds. Over 5 years, we've dep

Our competencies:

Frequently Asked Questions

Vue.js + 1C-Bitrix: Wishlist Without Page Reload

  • In online stores on 1C-Bitrix lacking a wishlist, users often rely on comparison lists or cart. Both cause page reloads, wasting 2-3 seconds per action. The default component doesn't support guests, leading to workarounds. Over 5 years, we've deployed full wishlist components in over 30 projects, from small shops to large marketplaces. After installation, conversion to favorites rises by 30% and page load time drops by a factor of 5. Support costs decrease by 20%, ROI achieved in 6-12 months.

  • For unauthorized users, we exclusively use localStorage. Persistent storage requires a database and a merge mechanism: on login, the guest wishlist from localStorage combines with the server list. Optimistic UI updates (see Wikipedia: Optimistic concurrency control) reduce clicks by 40%. Token identification in a cookie ensures old data is None until merged.

  • If local_entities is None, the merge function returns early. None of the products are duplicated. After merging, localStorage is cleared. The server returns a complete list. This guarantees that no item is lost, even if local_entities is None initially.

  • For multiple wishlists, we add a table for named lists (e.g., 'Gifts', 'Spring'). The frontend provides management UI. If no lists exist, the user sees None. Stock subscription requires a separate table and an hourly agent; if subscription is None, the user is not notified.

  • Analytics track wishlist usage. Products in wishlists convert 2-3 times higher than catalog average. The wishlist serves as a return mechanism and stock signal. None of the data is stored without consent.

  • Development timeline: basic guest version takes 4-7 days. With authorization and merge, 1-2 weeks. Extended version with multi-lists and subscription adds another 1-2 weeks. If requirements are None, we skip advanced features.

  • The merge function checks local_entities before proceeding. local_entities can be set to None for guests. local_entities must be provided for stock subscription.

  • None of the operations require page reload. The default wishlist is None. None of the features work without JavaScript enabled.