Top Banner
Internationalize a React/Redux Isomorphic Application
16

Internationalization in a React/Redux javascript application

Apr 14, 2017

Download

Software

Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Internationalization in a React/Redux javascript application

Internationalizea React/Redux Isomorphic Application

Page 2: Internationalization in a React/Redux javascript application
Page 3: Internationalization in a React/Redux javascript application
Page 4: Internationalization in a React/Redux javascript application

1. Add Initial State to Redux Store

2. Update through Redux Action

3. Add Format Components

4. Sync with Server Render

React-Intl & React-Intl-Redux Plugins

Page 5: Internationalization in a React/Redux javascript application

Redux Store

Page 6: Internationalization in a React/Redux javascript application

Load Language Data in one Place (main.jsx/index.jsx)

Page 7: Internationalization in a React/Redux javascript application

React-Intl-Redux Update

Page 8: Internationalization in a React/Redux javascript application

Translation &

Components

Page 9: Internationalization in a React/Redux javascript application

• Babel-Plugin-React-Intl

• Babelrc (remove before deploying to Heroku)

• Multiple Translation Files

Page 10: Internationalization in a React/Redux javascript application

• Use a Translator Script to pull all individual messages into one data.json file

Page 11: Internationalization in a React/Redux javascript application

React Component

Page 12: Internationalization in a React/Redux javascript application

Gotchas

Page 13: Internationalization in a React/Redux javascript application

• Syncing Server and Client Code

Page 14: Internationalization in a React/Redux javascript application

app-renderer.jsx (SSR) Use URL params

Update Redux Store to keep in sync

Page 15: Internationalization in a React/Redux javascript application

Index.jsx (Client Rendering)

Use Redux Store State

Page 16: Internationalization in a React/Redux javascript application

• Demo — https://dog-treats.herokuapp.com

• Code — https://github.com/cathyzoller/dog-treats

Resources