#reactjs #api
#reactjs #API
Вопрос:
Я интегрирую FastSpring в свое приложение для оплаты, и у меня проблема с сохранением данных в корзине после закрытия всплывающей витрины.
Согласно документации, я вставил скрипт в свой index.html вот так
<script
id="fsc-api"
src="https://d1f8f9xcsvx3ha.cloudfront.net/sbl/0.8.3/fastspring-builder.min.js"
type="text/javascript"
data-storefront="xxxxx.test.onfastspring.com/popup-xxx"
data-popup-webhook-received='paymentReceived'>
</script>
Затем в моем приложении React в js-файле я создал несколько кнопок для добавления товаров в корзину и одну для отображения корзины
<Buy onClick={()=>{addToCart(licence.name.replace(/s /g, ''))}}> <AddShoppingCartIcon/>Add to cart</Buy>
<ShoppingCartIcon onClick={()=>{myCart()}} style={{ width:'35px', height:'35px', cursor:'pointer'}}/>
Это мои функции для показа и добавления в корзину
async function myCart () {
let res
try {
res= await window.fastspring.builder.viewCart()
}
catch(err) {
console.log('err',err)
}
if(!res) { //res is always undefined (when cart is empty and also when its not)
NotificationManager.error('Your cart is empty! Please add some products.')
}
}
function addToCart (productID) {
const res= window.fastspring.builder.add(productID)
NotificationManager.success('Product added to your cart.')
}
Проблема в том, что если в корзине что-то есть после закрытия всплывающей витрины магазина, корзина автоматически пустеет, если вы попытаетесь показать ее снова.
Он показывает эту ошибку
[FastSpring API] (!) Ошибка: получена ошибка: 400 пустых сеансов
Как сохранить данные в корзине после закрытия всплывающей витрины? У кого-нибудь была подобная проблема?
Спасибо
Ответ №1:
Это поздний ответ, но у меня был такой же случай, когда корзина очищалась после закрытия всплывающего окна. К счастью, в FastSpring есть опция continuous
, которая предотвращает очистку корзины после закрытия всплывающего окна. Просто добавьте data-continuous="true"
в свой script
тег. Я изучил JavaScript SDK FastSpring и отладил весь цикл, чтобы обнаружить эту опцию.
Документы: https://fastspringexamples.com/callback/data-continuous /