首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >通过Transloco加载的阵列上的角ngFor

通过Transloco加载的阵列上的角ngFor
EN

Stack Overflow用户
提问于 2020-11-05 20:50:27
回答 2查看 628关注 0票数 1

我正在使用Transloco来管理angular10项目中的多种语言。我创建了一个像这样的json i18n文件:

代码语言:javascript
复制
    "Datalist":[
    {
        "from" : "value",
        "Content" : "data"
    },
    {
        "from" : "value",
        "Content" : "data"
    }...]

在我的模板中,我尝试这样从我的文件中加载值:

代码语言:javascript
复制
<div class="container" *transloco="let datalist; read: 'Datalist'">
<a>tst1</a>
<div class="tile is-3"  *ngFor="let data of datalist">
    <a>tst2</a>
    <div class="content">{{data.Content}}</div>
    <p class="subtitle">{{data.from}}</p>
</div>

我想为datalist的每个元素创建一个平铺,角不会抛出异常。但是,它没有加载任何东西(tst2没有显示)。我将有多个转换的数据,我希望在未来的能力,轻松地添加和删除数据,而不触及模板。

这是我的第一个角度计划,我可能错过了一些明显的东西。有什么想法吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2020-11-07 21:55:49

非常感谢您的回答,我尝试了您所说的,但是如果不事先通过transloco加载datalist,ngFor就不存在datalist。

我重新考虑了我的部件,清理了我的进口品。我设法使它工作(即使我真的不知道为什么),通过添加:

代码语言:javascript
复制
datalist: any;

在我的component.ts中,我应该稍后再键入它。

我对正在发生的事情的最佳选择是,当我在模板中调用*transloco="let datalist; read: 'Datalist'">时,它会在我的component.ts中初始化datalist,这样当我调用ngFor时,它就会在component.ts中找到带有值的datalist。总之,非常感谢!

票数 0
EN

Stack Overflow用户

发布于 2020-11-05 21:18:04

您应该能够使用transloco管道进行翻译。

代码语言:javascript
复制
<div class="tile is-3"  *ngFor="let data of datalist">
  <a>tst2</a>
  <div class="content">{{data.Content | transloco}}</div>
  <p class="subtitle">{{data.from | transloco}}</p>
</div>

data.content应该包含与i8n .json中相同的键。

示例:

en.json

代码语言:javascript
复制
{
    "GLOBAL": {
        "RESET": "Reset",
        "FILTER": "Filter",
    }
}

HTML:

代码语言:javascript
复制
<button mat-raised-button color="primary" (click)="reset()">{{ 'GLOBAL.RESET' | transloco }}</button
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64705085

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档