ni18n icon indicating copy to clipboard operation
ni18n copied to clipboard

Missing documentation about useSyncLanguage

Open aabmets opened this issue 3 years ago • 4 comments

What is the hook import {useSyncLanguage} from 'ni18n' used for?

aabmets avatar Oct 13 '22 20:10 aabmets

@aabmets A use case I know of is to switch the language via a dropdown.

export default function TheLanguageSwitch() {
    const { i18n } = useSyncLanguage();

    const dropdownItems = [
        {
            value: 'de',
            text: 'DE',
        },
        {
            value: 'en',
            text: 'EN',
        },
    ];

    const handleChange = (value: string) => {
        i18n.changeLanguage(value);
    };

    return (
        <Dropdown
            items={dropdownItems}
            value="de"
            handleChange={handleChange}
        />
    );
}

rherwig avatar Nov 03 '22 22:11 rherwig

@rherwig is correct here. I thought this was documented, but it seems it isn't.

All the types/functions should be properly documented in code though, so if you are using a typescript capable editor it should pick it up. I'll try to add it to the docs when I get more time.

Feel free to add it yourself as well if you want. :)

JCQuintas avatar Nov 04 '22 12:11 JCQuintas

Hi @JCQuintas, I added an example in the PR, you can have a look if you want to see if it matches your expectations. Please be kind, I'm not used to contributing a lot ^^

proustibat avatar Apr 21 '23 10:04 proustibat

i18n.changeLanguage(newLanguageCode).then(() => {
    console.log('should work');
});

abdallhsamy avatar Aug 28 '24 11:08 abdallhsamy