Невозможно переопределить CartPageMetaResolver

#hybris #spartacus-storefront

#sap-commerce-cloud #спартак-витрина магазина

Вопрос:

Я пытаюсь переопределить CartPageMetaResolver, который выглядит следующим образом

 import { Injectable } from '@angular/core';
import { BreadcrumbMeta,
    CmsService,
    PageBreadcrumbResolver,
    Priority,
    TranslationService } from '@spartacus/core';
import { CartPageMetaResolver } from '@spartacus/core/src/cart/services/cart-page-meta.resolver';
import { combineLatest, Observable } from 'rxjs';
import { map } from 'rxjs/operators';

@Injectable({
    providedIn: 'root',
})
export class NxsCartPageMetaResolver extends CartPageMetaResolver {}
 

При запуске сервера я получаю следующую ошибку

     ERROR in ./src/app/features/nxs-cart/services/nxs-cart-page-meta.resolver.ts
    Module not found: Error: Can't resolve '@spartacus/core/src/cart/services/cart-page-meta.resolver' 
in 'D:HYBRIS_SPARTACUSSPARTACUSnexusjs-storefrontmystoresrcappfeaturesnxs-cartservices'
 

в чем может быть проблема ?

Ответ №1:

К CartPageMetaResolver сожалению, он не экспортируется как часть общедоступного API, это ошибка. Мы исправляем это, но, возможно, вы захотите разблокировать себя с помощью следующего трюка:

 import { ɵct } from '@spartacus/core';
 

Обратите внимание, что точный символ для этого класса отличается для каждого выпуска. Вот почему это временное решение, а не то, что вы хотите сохранить. Точный символ можно найти в node_modules/@spartacus/core/spartacus-core.d.ts .

Мы исправляем это для версии 3.0, но если вам нужен бэкпорт для версии 2.1, пожалуйста, сообщите нам об этом (мы можем продолжить обсуждение в тикете).

Комментарии:

1. Спасибо за ваш ответ. На данный момент я нашел обходной путь для этого.