#spartacus-storefront
#spartacus-витрина
Вопрос:
У меня есть настройка с Spartacus v2 (Hybris 2005) в среде CCv2. В настоящее время я сталкиваюсь с проблемой, заключающейся в том, что содержимое метатега <meta name="occ-backend-base-url" content="OCC_BACKEND_BASE_URL_VALUE" />
не заменяется ни в одном из моих окружений.
Это происходит потому, что мне нужно установить префикс occ в моем app.module.ts на с hybris 2005:
backend: {
occ: {
prefix: '/occ/v2/'
}
}
Существует ли решение этой проблемы только для внешнего интерфейса или нам нужно изменить префикс обратно на /rest/v2 в серверной части?
Есть ли причина, по которой мета-тег игнорируется, даже если в объекте данных backend.occ не определен url, а только префикс?
index.html
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>Spartacusstore</title>
<base href="/">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="icon" type="image/x-icon" href="favicon.ico">
<link rel="manifest" href="manifest.webmanifest">
<meta name="theme-color" content="#1976d2">
<meta name="occ-backend-base-url" content="OCC_BACKEND_BASE_URL_VALUE" />
</head>
<body>
<app-root></app-root>
<noscript>Please enable JavaScript to continue using this application.</noscript>
</body>
</html>
app.module.ts
import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';
import { AppComponent } from './app.component';
import { translations, translationChunksConfig } from '@spartacus/assets';
import { B2cStorefrontModule } from '@spartacus/storefront';
import { OccConfig, I18nModule, TranslatePipe } from '@spartacus/core';
const occConfig: OccConfig = { backend: { occ: {} } };
@NgModule({
declarations: [
AppComponent
],
imports: [
BrowserModule,
B2cStorefrontModule.withConfig({
backend: {
occ: {
prefix: '/occ/v2/'
}
},
checkout: {
guest: true
},
context: {
currency: ['USD'],
language: ['en'],
baseSite: ['electronics-spa']
},
i18n: {
resources: translations,
chunks: translationChunksConfig,
fallbackLang: 'en'
},
features: {
level: '2.0'
},
}),
],
providers: [],
bootstrap: [AppComponent]
})
export class AppModule { }
Комментарии:
1. Я проверил приложение локально, и spartacus работает правильно. Префикс выбирается из статической конфигурации, а серверный ulr выбирается из мета-тега html. Можете ли вы также проверить этот сценарий локально? Если это работает для вас локально, вы можете поднять проблему в CCv2
2. @MarcinLasak спасибо за ответ, у меня такая же проблема локально, какую версию spartacus вы используете?
3. Я тестировал это на версии 2.1.0. Я поместил URL-адрес в мета-тег, и все заработало. Ожидали ли вы, что мета-тег будет автоматически заменен даже локально?