首页 > 解决方案 > SmartEditService.isLaunchedInSmartEdit() 始终返回 null

问题描述

我有斯巴达克斯店面应用程序。

斯巴达克斯版本是 3.2.2。

我需要检查页面是否在智能编辑中加载。

为此,我尝试使用this.smartEditService.isLaunchedInSmartEdit(),但它总是返回空值。

请帮我找到解决方案。

下面是我的示例服务代码。

import { Product, ProductService, RoutingService, CmsService, SmartEditService } from '@spartacus/core';
import { Observable } from 'rxjs';

@Injectable({
  providedIn: 'root',
})
export class CurrentProductService {

  constructor(
    private smartEditService: SmartEditService
  ) {

  }

  getProduct(): Observable<Product> {
  
    if (this.smartEditService && this.smartEditService.isLaunchedInSmartEdit()) {
      return false
    }
    return true;
  }
}

标签: spartacus-storefront

解决方案


从 3.2 开始,SmartEditModule不推荐使用。您可以SmartEditModule在您的应用程序中导入已弃用的(从核心),或使用SmartEditServicefrom @spartacus/smarteditlib。


推荐阅读