Skip to content

Instantly share code, notes, and snippets.

@toruticas
Created April 30, 2020 16:18
Show Gist options
  • Select an option

  • Save toruticas/72d5725e42b242583354a715ef20ffd9 to your computer and use it in GitHub Desktop.

Select an option

Save toruticas/72d5725e42b242583354a715ef20ffd9 to your computer and use it in GitHub Desktop.
import SplitFactory from '@splitsoftware/splitio'
// Instancia a SDK
const factory = SplitFactory({
core: {
authorizationKey: 'YOUR_API_KEY',
// A 'key' pode ser o ID do usuário conectado ou o ID da conta à qual o
// usuário conectado pertence. Em resumo, o ID é a chave que identificado o
// usuário. Dependendo da sua regra de negócio, faz mais sentido usar o
// identificado como um grupo invés do ID do usuário.
key: 'key'
},
startup: {
readyTimeout: 1.5 // 1.5 sec
}
});
// Obtenha a instância do cliente que você usará
const client = factory.client();
export { client }
import { client } from './setup'
client.on(client.Event.SDK_READY, function() {
// Caso a FEATURE_TOGGLE_A não seja encontrada no painel ou dê timeout na
// hora de buscar o experimento (conexão lenta ou split fora do ar) o valor
// retornar pelo getTreatment será "control".
const treatment = client.getTreatment("FEATURE_TOGGLE_A");
if (treatment == "on") {
// Aqui vai o código que deve mostrar o comportamento ligado
} else if (treatment == "off") {
// Aqui vai o código que deve mostrar o comportamento desligado
} else {
// Aqui vai o código de controle, que não contempla o comportamento ligado
// ou desligado.
// Na imensa maioria dos casos o comportamento de "off" e "control" será o
// mesmo, então o else-if acaba não existindo.
}
});
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment