C # текст исчезает после времени [дубликат]

Ответ, связанный с тем, что IE11 не имеет доступа к свойству navigator.languages.

Необходимо изменить код (все еще можно сделать с рефакторингом!), чтобы проверить, присутствует ли свойство navigator.languages, затем тест для языков и возврат, если условия не были выполнены.

function* setLanguageFromBrowserSettings() {
  if (!navigator.languages) {
    if ((navigator.language === "en-US") || (navigator.language === "en")) {
      console.log("Language set to en-US");
      yield put({
        type: "Translations/SetLocale",
        payload: "en-US"
      });
    } else if ((navigator.language === "zh") || (navigator.language === "zh-CN") || (navigator.language === "zh-Hans")) {
      console.log("Language set to zh-Hans");
      yield put({
        type: "Translations/SetLocale",
        payload: "zh-Hans"
      });
    }
    return 0;
  }
  if ((navigator.languages[0] === "en-US") || (navigator.languages[0] === "en")) {
    console.log("Language set to en-US");
    yield put({
      type: "Translations/SetLocale",
      payload: "en-US"
    });
  } else if ((navigator.languages[0] === "zh") || (navigator.languages[0] === "zh-CN") || (navigator.languages[0] === "zh-Hans")) {
    console.log("Language set to zh-Hans");
    yield put({
      type: "Translations/SetLocale",
      payload: "zh-Hans"
    });
  }
}
53
задан Jesse 31 March 2014 в 22:42
поделиться

9 ответов

101
ответ дан dknaack 26 August 2018 в 10:01
поделиться
1
ответ дан Alec 26 August 2018 в 10:01
поделиться
7
ответ дан Community 26 August 2018 в 10:01
поделиться
30
ответ дан hellow 26 August 2018 в 10:01
поделиться
1
ответ дан Jesse Chisholm 26 August 2018 в 10:01
поделиться
3
ответ дан John 26 August 2018 в 10:01
поделиться
0
ответ дан Pranav 26 August 2018 в 10:01
поделиться

Я думаю, я нашел, почему есть несколько разных ответов на этот вопрос. Когда окно было изменено таким образом, что оно имеет горизонтальную полосу прокрутки (поскольку буфер больше окна) Console.CursorTop, похоже, возвращает неправильную строку. Следующий код работает для меня независимо от размера окна или положения курсора.

public static void ClearLine()
{
    Console.SetCursorPosition(0, Console.CursorTop);
    Console.Write(new string(' ', Console.WindowWidth));
    Console.SetCursorPosition(0, Console.CursorTop - (Console.WindowWidth >= Console.BufferWidth ? 1 : 0));
}

Без (Console.WindowWidth> = Console.BufferWidth? 1: 0) код может перемещать курсор вверх или вниз, в зависимости от того, какую версию вы используете на этой странице, и состояние окна.

0
ответ дан SomeNameNotFake 26 August 2018 в 10:01
поделиться
4
ответ дан User0123456789 26 August 2018 в 10:01
поделиться
Другие вопросы по тегам:

Похожие вопросы: