Ранняя документация по Angular для i18n, о которой я знаю, представляет собой пример кода Stephen Fluin. https://github.com/StephenFluin/i18n-sample/commit/e2cb2006c614fce0f6d623def5f13174583233d3Угловой 2 i18n дает перевод недоступных сообщений консоли
Я попытался внимательно следить за ним. Atom-машинопись говорит без ошибок, но я получаю Translation недоступны консольные сообщения для каждого элемента, как следующее с < и> удалены -
zone.js: ошибки разбора шаблона:: 355 Неизвестного Promise отказа
MD- grid-tile [ERROR ->] button id = "terms" md-button aria-label = "TERMS" i18n = "кнопка для Условий обслуживания" TERMS/button/md "): AppComponent @ 63: 19 Перевод недоступен для кнопка ("-label =" КРУГ»i18n = "Правила для предоставления услуг" КРУГ/кнопки/Md-сетка-плиточных идентификатор сообщения = "8476fc13627507c3d0ec6b85dae533f0c5e44eef"
Мой соответствующий код является:
package.json То же, что и указано, кроме того, что я не включаю @ угловое/tsc-wrapped, потому что здесь здесь не нужно.
component.html - Примеры мой HTML выглядит следующим образом:
<h4 id="motto" i18n="our motto stating the value of using this site">MOTTO</h4>
<md-grid-tile><button id="terms" md-button aria-label="TERMS" i18n="button for Terms of Service">TERMS</button></md-grid-tile>
main.ts я ушел из производственной среды линий & polyfills
import { platformBrowserDynamic } from '@angular/platform-browser-dynamic';
import { TRANSLATIONS, TRANSLATIONS_FORMAT, LOCALE_ID } from '@angular/core';
import { AppModule } from './app.module';
import { TRANSLATION } from './components/navigation/language/messages.en';
platformBrowserDynamic().bootstrapModule(
AppModule,
{providers: [
{ provide: TRANSLATIONS, useValue:TRANSLATION },
{ provide:TRANSLATIONS_FORMAT, useValue:'xlf' },
{ provide:LOCALE_ID, useValue:'en' }
]});
messages.en.ts примерами повторяющихся элементов являются:
export const TRANSLATION = `
<?xml version='1.0' encoding='utf-8'?>
<xliff xmlns="urn:oasis:names:tc:xliff:document:1.2" version="1.2">
<file source-language="en" datatype="plaintext" original="ng2.template">
<body>
<trans-unit id="motto" datatype="html" approved="yes">
<source>MOTTO</source> <target state="translated">Find a home, save time</target>
<note priority="1" from="description">our motto stating the value of using this site</note>
</trans-unit>
<trans-unit id="terms" datatype="html" approved="yes">
<source>TERMS</source> <target state="translated">Terms of Service</target>
<note priority="1" from="description">button for Terms of Service</note>
</trans-unit>
messages.en.xlf снова пример повторяющихся элементов
<?xml version='1.0' encoding='utf-8'?>
<xliff xmlns="urn:oasis:names:tc:xliff:document:1.2" version="1.2">
<file source-language="en" datatype="plaintext" original="ng2.template">
<body>
<trans-unit id="motto" datatype="html" approved="yes">
<source>MOTTO</source> <target state="translated">Find a home, save time</target>
<note priority="1" from="description">our motto stating the value of using this site</note>
</trans-unit>
messages.xlf снова пример повторяющихся элементов
<?xml version="1.0" encoding="UTF-8" ?>
<xliff version="1.2" xmlns="urn:oasis:names:tc:xliff:document:1.2">
<file source-language="en" datatype="plaintext" original="ng2.template">
<body>
<trans-unit id="motto" datatype="html">
<source>MOTTO</source>
<target/>
<note priority="1" from="description">our motto stating the value of using this site</note>
</trans-unit>
код Стефана имеет 40 цифр шестнадцатеричных чисел для trans-unit id s. Я не знаю, как они были созданы. У моего кода есть такие вещи, как id = «девиз». Мои сообщения консоли содержат 40-значный шестнадцатеричный код, но они кажутся меняющимися каждый раз, когда я что-то пробую. Эта часть - загадка.
Это довольно кровоточащий край без реальных документов, но кто-нибудь знает, как это исправить? Я уезжаю из города до 10/17, но я с нетерпением буду испытывать хорошие идеи, когда вернусь.