nuxt-community / google-optimize-module

SSR friendly Google Optimize module for Nuxt.js
MIT License
215 stars 32 forks source link

named variants #38

Open pi0 opened 4 years ago

pi0 commented 4 years ago

Originally mentioned by @hecktarzuli (https://github.com/nuxt-community/google-optimize-module/pull/34#issuecomment-676496857)

I'm also toying with the idea of revamping the MVT support. Currently it's just 'sections:#' and weights but in practice I would find it very hard to code an experiment against a variant index and an intVal vs a named obj with values. For example. As a user, I'd prefer something like this if($exp.$activeVariants.buttonColor == 'red') .. if($exp.$activeVariants.headerText == 'excited') .. vs An array of variant objects ($exp.$activeVariants) [ {weight: 25 }, { weight: 25}, {weight: 25 }, { weight: 25}].. This idea is pretty new and not totally flushed out, but if we do decide to go in this direction, then we'd want a new major version for sure.

As a non breaking change, we may support new flattened $exp.variants[name || index] computed property which is an object from itentifier to variant object.