Angular Serve i18n翻译提供英文文本

Angular Serve i18n翻译提供英文文本,angular,angular5,angular-i18n,Angular,Angular5,Angular I18n,我几乎一直在关注角度翻译。但是,当使用 g serve--aot--i18nFile=src/locale/messages.fr.xlf--i18nFormat=xlf--locale=fr 我仍然能读到英文文本 我有一个messages.xlf和messages.fr.xlf: src/messages.xlf <?xml version="1.0" encoding="UTF-8" ?> <xliff version="1.2" xmlns="urn:oasis:name

我几乎一直在关注角度翻译。但是,当使用

g serve--aot--i18nFile=src/locale/messages.fr.xlf--i18nFormat=xlf--locale=fr

我仍然能读到英文文本

我有一个messages.xlf和messages.fr.xlf:

src/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="welcome" datatype="html">
        <source>Hello!</source>
        <context-group purpose="location">
          <context context-type="sourcefile">app/app.component.ts</context>
          <context context-type="linenumber">2</context>
        </context-group>
        <note priority="1" from="description">user welcome</note>
      </trans-unit>
    </body>
  </file>
</xliff>
<?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="welcome" datatype="html">
        <source>Hello!</source>
                <target>Bonjour!</target>
        <context-group purpose="location">
          <context context-type="sourcefile">app/app.component.ts</context>
          <context context-type="linenumber">2</context>
        </context-group>
        <note priority="1" from="description">user welcome</note>
      </trans-unit>
    </body>
  </file>
</xliff>

你好
app/app.component.ts
2.
用户欢迎
src/locale/messages.fr.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="welcome" datatype="html">
        <source>Hello!</source>
        <context-group purpose="location">
          <context context-type="sourcefile">app/app.component.ts</context>
          <context context-type="linenumber">2</context>
        </context-group>
        <note priority="1" from="description">user welcome</note>
      </trans-unit>
    </body>
  </file>
</xliff>
<?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="welcome" datatype="html">
        <source>Hello!</source>
                <target>Bonjour!</target>
        <context-group purpose="location">
          <context context-type="sourcefile">app/app.component.ts</context>
          <context context-type="linenumber">2</context>
        </context-group>
        <note priority="1" from="description">user welcome</note>
      </trans-unit>
    </body>
  </file>
</xliff>

你好
你好!
app/app.component.ts
2.
用户欢迎
和我的测试应用程序模板:

<div i18n="user welcome@@welcome">Hello!</div>
你好!
只需更换

<div i18n="user welcome@@welcome">Hello!</div>
你好!



似乎不是这样。执行上述操作时,不显示任何内容。此外,官方文件的标签之间有文本。嗯,你重新生成了你的文件吗?如果您的标签放错了位置,那么翻译人员将无法找到它。它还在你档案的第二行吗?如果FR文件中有一个language=en,请替换它以确保其正确性。
source language=“en”
类似于此并表示源语言。尽管如此,它也不适用于fr。您的翻译行是否仍在文件的第2行?另外,您的文件是否在正确的文件夹中?您是否也可以尝试使用命令
--i18n file
而不是
--i18n file
,结果与
ng serve--aot--i18n file=./src/locale/messages.fr.xlf--i18n format=xlf--locale=fr
相同。是的,在2号线。