首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如果我收到的内容类型是JSON-LD + Hydra,我应该使用ngrx-data吗?

如果我收到的内容类型是JSON-LD + Hydra,我应该使用ngrx-data吗?
EN

Stack Overflow用户
提问于 2020-01-19 20:23:51
回答 1查看 76关注 0票数 3

我喜欢JSON、Hydra的优点,并且刚刚发现了NgRx/data。

我试着在没有定制的情况下使用它,这显然是行不通的。今天我花了几个小时在文档上,这给我留下了更多的问题。

重要的是,我不想牺牲任何有关收藏的信息。所以我不能只使用定制效果。

知道怎么解决这个问题吗?

收集回复:

代码语言:javascript
复制
{
    "@context": "/contexts/Article",
    "@id": "/articles",
    "@type": "hydra:Collection",
    "hydra:member": [
        {
            "@id": "/articles/91",
            "@type": "http://schema.org/Article",
            "headline": "Neque illum sed adipisci dolorem rem.",
            "slug": "reiciendis-nesciunt-labore-voluptas",
            "author": {
                "@id": "/people/91",
                "@type": "http://schema.org/Person",
                "id": 91,
                "name": "Edd Nienow"
            },
            "publisher": null,
            "aggregateRating": null,
            "articleCreator": {
                "@id": "/people/91",
                "@type": "http://schema.org/Person",
                "name": "Edd Nienow"
            },
            "articleType": "tutorial",
            "creativeWorkStatus": "draft",
            "articleVersions": [
                {
                    "content": "Facere illo praesentium accusantium suscipit voluptatem laborum nihil sed. Aperiam doloremque mollitia nisi voluptatem facilis. Voluptatem sed aut et incidunt id et error modi.",
                    "articleBody": "Omnis et dolores enim praesentium. Temporibus nisi mollitia maiores voluptas nobis impedit.",
                    "brief": "Est quae minima ut ab eaque ut. Neque qui nemo quaerat consequatur.",
                    "wordCount": 779,
                    "image": null,
                    "createdAt": "1980-09-30T01:43:18+00:00"
                }
            ],
            "articleCategories": [],
            "articleTerms": [],
            "publishedAt": "2003-11-11T05:23:26+00:00",
            "createdAt": "1971-10-23T07:53:28+00:00"
        },
    ],
    "hydra:totalItems": 100,
    "hydra:view": {
        "@id": "/articles?page=4",
        "@type": "hydra:PartialCollectionView",
        "hydra:first": "/articles?page=1",
        "hydra:last": "/articles?page=4",
        "hydra:previous": "/articles?page=3"
    }

单一答复:

代码语言:javascript
复制
{
    "@context": "/contexts/Article",
    "@id": "/articles/91",
    "@type": "http://schema.org/Article",
    "headline": "Neque illum sed adipisci dolorem rem.",
    "slug": "reiciendis-nesciunt-labore-voluptas",
    "author": {
        "@id": "/people/91",
        "@type": "http://schema.org/Person",
        "name": "Edd Nienow"
    },
    "publisher": null,
    "aggregateRating": null,
    "articleCreator": {
        "@id": "/people/91",
        "@type": "http://schema.org/Person",
        "name": "Edd Nienow"
    },
    "articleType": "tutorial",
    "creativeWorkStatus": "draft",
    "articleVersions": [
        {
            "content": "Facere illo praesentium accusantium suscipit voluptatem laborum nihil sed. Aperiam doloremque mollitia nisi voluptatem facilis. Voluptatem sed aut et incidunt id et error modi.",
            "articleBody": "Omnis et dolores enim praesentium. Temporibus nisi mollitia maiores voluptas nobis impedit.",
            "brief": "Est quae minima ut ab eaque ut. Neque qui nemo quaerat consequatur.",
            "wordCount": 779,
            "image": null,
            "createdAt": "1980-09-30T01:43:18+00:00"
        }
    ],
    "articleCategories": [],
    "articleTerms": [],
    "publishedAt": "2003-11-11T05:23:26+00:00",
    "createdAt": "1971-10-23T07:53:28+00:00"
}
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-04-21 10:34:42

我看到了一种方法:

  1. 在您的模型中添加"@“属性:

代码语言:javascript
复制
export interface HydraEntity {
    '@id': string;
    '@type': string;
}

export interface Author extends HydraEntity{
    id: number;
    name: string;
}

Ngrx/data响应添加附加的“:*”字段:

  1. 的方式

你应该能够降低你在你的状态下的成绩。

我从未试过,但我假设它遵循以下问题:https://github.com/ngrx/platform/issues/1948

通向PR:https://github.com/ngrx/platform/pull/1921

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59814072

复制
相关文章

相似问题

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