i18n React-Native неожиданный токен ';' - PullRequest
0 голосов
/ 10 сентября 2018

Я настроил I18n в проекте IOS и сейчас работаю в проекте Android.

Я получаю неожиданный токен ';'ошибка.

Когда я комментирую оператор импорта для строк и статических навигационных параметров, ошибка исчезает и сборка завершается успешно:

import React, { Component } from 'react';
import {
  View,
  Text,
  StyleSheet,
  ImageBackgroud,
  // TextInput
} from 'react-native';
// import {
//   Button
// } from 'react-native-elements';
// import {
//   Spinner
// } from '../components/common';

here --> //import { strings } from '../locales/i18n';

class SignUp extends Component {

  //static navigationOptions = {
 here -->// title: strings('SignUp.title')
  //}

  constructor(props) {
    super(props);
    this.state = {
      email: '',
      password: '',
      loading: false
    };
  }

  render() {
   return (
      <ImageBackgroud
        source={require('.././assets/swooshResize.jpg')}
        style={styles.backG}
      >
        <View>
          <Text>
           HELLO!
          </Text>
        </View>
      </ImageBackgroud>
    );
  }

}

const styles = StyleSheet.create({
  backG: {
     width: '100%',
     height: '100%'
  },
});

export default SignUp;

Это файл локалей i18n.js:

import I18n from 'react-native-i18n';
import en from './en.json';
import fr from './fr.json';
import es from './es.json';

I18n.fallbacks = true;

I18n.translations = {
  en, 
  fr,
  es
};

// RTL language support
// export const isRTL = currentLocale.indexOf('he') === 0 || 
currentLocale.indexOf('ar') === 0;

// Allow RTL alignment in RTL languages
// ReactNative.I18nManager.allowRTL(isRTL);

export function strings(name, params = {}) {
  return I18n.t(name, params);
}

export default I18n;

И это JSON для английского:

{
  "SignUp": {
    "title": "Sign Up"
  }
}

Полное сообщение об ошибке:

Неожиданный токен ';'(http://10.0.2.2:8081/index.delta? платформа = android & dev = true & minify = false: 112892)

неожиданный токен ';'(http://10.0.2.2:8081/index.delta? платформа = android & dev = true & minify = false: 112892)

У меня это работало в сборке IOS, а затем я заметил, что response-native i18n обновлен до 2.0.15, и теперь я получаю эту странную ошибку,Любая помощь будет принята с благодарностью, также я изменил ее на спецификации документации, и в ней все еще была ошибка.Если вы бежите.

Может быть, вам помогут свежие глаза.

Спасибо, что нашли время взглянуть на этот пост

1 Ответ

0 голосов
/ 08 октября 2018

У меня была такая же проблема. Понятия не имею, с чего начать. Оказывается, что если один из ваших файлов перевода просто пуст (даже не содержит {}), он выдаст эту ошибку.

Решил, предоставив все файлы перевода с содержанием, по крайней мере {}, чтобы сделать его действительным файлом json.

Открыт этот билет .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...