SAP Emarsys 和 SAP Spartacus 的集成

简介: SAP Emarsys 和 SAP Spartacus 的集成

要将 WebExtend Scripts for Emarsys集成到SAP Spartacus中,可以按照以下步骤操作:


在Spartacus项目的根目录中创建一个名为“emarsys”(或其他名称)的新文件夹,然后将Emarsys WebExtend脚本文件(例如12345.js)放入该文件夹中。


在Spartacus项目的“index.html”文件中添加以下代码,以在页面底部引入Emarsys脚本文件:


<script src="./emarsys/12345.js" type="text/javascript"></script>

1

请确保将路径“./emarsys/12345.js”替换为您实际存储Emarsys WebExtend脚本文件的路径和文件名。


在Spartacus项目的“app.module.ts”文件中导入“BrowserTransferStateModule”,并将其添加到@NgModule注解的imports数组中,如下所示:

import { NgModule } from '@angular/core';
import { BrowserModule, BrowserTransferStateModule } from '@angular/platform-browser';
import { AppComponent } from './app.component';
@NgModule({
  declarations: [AppComponent],
  imports: [BrowserModule, BrowserTransferStateModule],
  bootstrap: [AppComponent]
})
export class AppModule {}




在Spartacus项目的“app.server.module.ts”文件中,将“BrowserTransferStateModule”添加到NgModule注解的imports数组中,如下所示:

import { NgModule } from '@angular/core';
import { ServerModule, ServerTransferStateModule } from '@angular/platform-server';
import { AppModule } from './app.module';
import { AppComponent } from './app.component';
@NgModule({
  imports: [AppModule, ServerModule, ServerTransferStateModule],
  bootstrap: [AppComponent],
})
export class AppServerModule {}




在Spartacus项目的“app.component.ts”文件中,添加以下代码以向Emarsys发送自定义事件:


import { Component, OnInit } from '@angular/core';
declare var emarsys: any;
@Component({
  selector: 'app-root',
  templateUrl: './app.component.html',
  styleUrls: ['./app.component.scss']
})
export class AppComponent implements OnInit {
  ngOnInit() {
    // 发送自定义事件
    emarsys.push({ event: 'Custom Event' });
  }
}




请确保将“Custom Event”替换为您要发送的实际事件名称。


完成这些步骤后,您就可以将Emarsys WebExtend脚本集成到SAP Spartacus中,并通过发送自定义事件来跟踪用户行为。请注意,您需要将代码适当地修改和调整,以便与您自己的Emarsys帐户进行正确的集成。


Angular中的BrowserTransferStateModule模块是Angular提供的一个用于在客户端和服务器端之间传输数据的模块。该模块提供了一个TransferState服务,用于在服务器端生成的响应中捕获数据,然后在客户端渲染应用程序时将该数据传输到浏览器。


在传统的客户端应用程序中,浏览器会首先向服务器发出请求,然后服务器会返回HTML响应。在Angular应用程序中,应用程序通常在浏览器中运行,但也可以在服务器上预渲染部分或全部应用程序。在这种情况下,服务器会生成HTML响应,然后将其发送回浏览器,这样浏览器就不必再向服务器发出请求了。


BrowserTransferStateModule模块的作用是在服务器端生成响应时,将响应中的数据存储在TransferState服务中。然后,当应用程序在浏览器中运行时,该服务会将数据从TransferState服务中读取并注入到应用程序中,以便应用程序可以立即使用该数据,而不必等待服务器返回数据。


这种方式可以提高应用程序的性能和响应速度,因为它可以减少服务器请求的数量,并在客户端渲染应用程序时立即提供所需的数据。同时,由于数据已经在服务器端生成并存储在TransferState服务中,所以不必担心客户端和服务器端之间的同步问题。



相关文章
SAP Emarsys 和 SAP Spartacus 的集成
SAP Emarsys 和 SAP Spartacus 的集成
SAP Spartacus OrganizationState
organizationState作为createSelector的第二个参数,即projector,箭头函数的输入参数。
SAP Spartacus OrganizationState
|
JavaScript 网络架构
SAP Commerce SmartEdit 如何同 SAP Spartacus 协同工作
SAP Commerce SmartEdit 如何同 SAP Spartacus 协同工作
SAP Commerce SmartEdit 如何同 SAP Spartacus 协同工作
如何安装 SAP Commerce Cloud,以便让 SAP Spartacus 使用
如何安装 SAP Commerce Cloud,以便让 SAP Spartacus 使用
111 0
如何安装 SAP Commerce Cloud,以便让 SAP Spartacus 使用
SAP Spartacus的SkipLink功能
官网地址:https://sap.github.io/spartacus-docs/skip-links/#default-skip-link-configuration Skip links allow users to quickly navigate to important areas of a page using the keyboard. Skip Links允许用户使用键盘快速跳转到页面的重要区域。 You activate skip links by pressing the tab key when a page is loaded, and before any ot
SAP Spartacus的SkipLink功能
|
JavaScript Go API
关于 SAP Spartacus 和 SmartEdit 集成的问题
关于 SAP Spartacus 和 SmartEdit 集成的问题
172 0
关于 SAP Spartacus 和 SmartEdit 集成的问题
|
前端开发 JavaScript 开发工具
如何在 SAP Commerce Cloud Portal 构建和部署 SAP Spartacus Storefront
如何在 SAP Commerce Cloud Portal 构建和部署 SAP Spartacus Storefront
159 0
如何在 SAP Commerce Cloud Portal 构建和部署 SAP Spartacus Storefront
|
数据采集 前端开发 JavaScript
选择 SAP Spartacus 作为 SAP Commerce Cloud Storefront 实现框架的五个理由
选择 SAP Spartacus 作为 SAP Commerce Cloud Storefront 实现框架的五个理由
110 0
选择 SAP Spartacus 作为 SAP Commerce Cloud Storefront 实现框架的五个理由