SAP Spartacus注入自定义的CurrentProductService
生活随笔
收集整理的這篇文章主要介紹了
SAP Spartacus注入自定义的CurrentProductService
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
新建一個MyCurrentProductService,返回一個硬編碼的產品主數據:
完整源代碼如下:
import { Product, ProductScope } from '@spartacus/core'; import { Observable, of } from 'rxjs';const PRODUCT: Product = {code: '300938',name: 'Jerry hard code value',summary: 'Jerry hard code value.',price: {formattedValue: '$10000',currencyIso: 'USD',// "priceType": "BUY",value: 10000},images: {PRIMARY: {zoom: {altText: 'Photosmart E317 Digital Camera',format: 'zoom',// : "PRIMARY",url: 'https://spartacus-dev0.eastus.cloudapp.azure.com:9002/medias/?context=bWFzdGVyfGltYWdlc3wxMzkzNnxpbWFnZS9qcGVnfGltYWdlcy9oMjYvaDdhLzg3OTcyNTE0NjkzNDIuanBnfGU3N2FlYWQ1YmQ1ODhjZjZiNTFjNDg3NDdjNGRkNjM5NGQzMjZmZWVmNjc3ZWQwMjgzY2MyNDJlNzYyNTczM2Q'},product: {altText: 'Photosmart E317 Digital Camera',format: 'product',// "imageType": "PRIMARY",url: 'https://spartacus-dev0.eastus.cloudapp.azure.com:9002/medias/?context=bWFzdGVyfGltYWdlc3w3MDg1fGltYWdlL2pwZWd8aW1hZ2VzL2g2Ni9oOWQvODc5NzI3Nzc0OTI3OC5qcGd8NzdjOTNiMThkODQ4NTM4NmQ2NjMxMGMwYmMyOTIwODIwMzI4NTgyMGUxNDc4Y2I0OTRkOGViODNlNDZiYTJhNw'},thumbnail: {altText: 'Photosmart E317 Digital Camera',format: 'thumbnail',// "imageType": "PRIMARY",url: 'https://spartacus-dev0.eastus.cloudapp.azure.com:9002/medias/?context=bWFzdGVyfGltYWdlc3wyMDYxfGltYWdlL2pwZWd8aW1hZ2VzL2g3ZS9oZmEvODc5NzMwNDA5NDc1MC5qcGd8OGZjMTNjM2JmMGY0MmYyMWY3OGM5YjQ4YjAyNzM4NjkxYjUyMmQzMDBhMmMzMjMwZThmMjI4OWMwZjg1NmYzMw'},cartIcon: {altText: 'Photosmart E317 Digital Camera',format: 'cartIcon',// "imageType": "PRIMARY",url: 'https://spartacus-dev0.eastus.cloudapp.azure.com:9002/medias/?context=bWFzdGVyfGltYWdlc3wxNDQwfGltYWdlL2pwZWd8aW1hZ2VzL2gxNS9oZmYvODc5NzMzMDQ0MDIyMi5qcGd8ODU0ZWQwMjY5OWE5OTBlZjc0ZGFhZTU4ZWYwNDk4ODFmZmM1ZTg2ZjIxOWFiZTBkZmU0NDBmMDBiNTYyMzdlYg'}},GALLERY: []},nameHtml: 'Photosmart E317 Digital Camera',//nameForUrl: 'photosmart-e317-digital-camera',baseOptions: [],purchasable: true,averageRating: 4.5,stock: {/*'isValueRounded': false,'stockLevel': 314,'stockLevelStatus': 'inStock'*/},description: 'Get point and shoot simplicity plus crisp, true-to-life photos with this stylish and easy-to-use camera.<br/><br/>Get close in with 4x digital zoom, review via the clear 3.8 cm LCD then print great 10 × 15 cm photos and enlargements up to poster size.',availableForPickup: true,url: '/electronics-spa/products/300938',numberOfReviews: 22,manufacturer: 'HP',categories: [{code: '576',name: 'Digital Compacts',url: '/Open-Catalogue/Cameras/Digital-Cameras/Digital-Compacts/c/576'},{code: 'brand_1',name: 'HP',url: '/Brands/HP/c/brand_1'}],priceRange: {}//,//configurable: false };export class MyCurrentProductService {getProduct(scopes?: (ProductScope | string)[] | ProductScope | string): Observable<Product> {console.log('My product service is called!');return of(PRODUCT);} }在app module里,用MyCurrentProductService覆蓋掉SAP Spartacus標準的CurrentProductService:
運行時測試,我任意點開一個產品主數據的明細頁面,都會調用我自己的CurrentProductService,顯示硬編碼的數據:
要獲取更多Jerry的原創文章,請關注公眾號"汪子熙":
總結
以上是生活随笔為你收集整理的SAP Spartacus注入自定义的CurrentProductService的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 苹果和 Masimo 诉讼进入陪审团环节
- 下一篇: 泰裤辣!iPhone 15全系要用USB