@featurevisor/react
Version:
React package for Featurevisor
21 lines • 833 B
JavaScript
import { useEffect, useState } from "react";
import { useSdk } from "./useSdk";
import { onFeatureChange } from "./onFeatureChange";
export function useVariable(featureKey, variableKey, context = {}) {
const sdk = useSdk();
const initialValue = sdk.getVariable(featureKey, variableKey, context);
const [variableValue, setVariableValue] = useState(initialValue);
useEffect(() => {
const unsubscribe = onFeatureChange(sdk, featureKey, () => {
const newValue = sdk.getVariable(featureKey, variableKey, context);
if (newValue !== variableValue) {
setVariableValue(newValue);
}
});
return () => {
unsubscribe();
};
}, [featureKey, variableKey, context]);
return variableValue;
}
//# sourceMappingURL=useVariable.js.map