Magento 2根据用户输入计算产品价格

时间:2018-04-05 07:52:21

标签: magento attributes magento2 product

我目前正在尝试实施一些额外的产品价格属性,该属性将根据用户输入并计算价格。尝试使用价格属性但不起作用。知道如何做到这一点,因为magento的新功能无法解决这个问题。请注意高度和宽度是输入类型文本,用户可以添加任何值

enter image description here

为实现这一目标,我在admin部分创建了一组属性, enter image description here

从前端试图计算价格,

require([
        'jquery','Magento_Catalog/js/price-utils','jquery/ui','Magento_Catalog/js/price-box'
    ], function($,priceUtils,priceBox){

        "use strict";
        var priceBoxes = $('[data-role=priceBox]');
        $('.product-custom-optionval').change(function () {
            var value = $(this).val();

            if (value === '') { 
                $(this).val(0);
                updatePriceOnChange(0, $(this).attr('data-attr-id'));                            
                return;
            }
            disableAddToCartBtn('#product_addtocart_form');
            calculatePrice($(this));
            enableAddToCartBtn('#product_addtocart_form');
        });
    ****** But after calculating the price what will my approach to update product price, please help *******

1 个答案:

答案 0 :(得分:2)

HI为此你可以做类似

的事情
  • 创建自定义模块
  • 定义自定义控制器
  • 每当用户将输入放入高度和宽度时
  • 将这些参数与产品ID和数量
  • 一起发送到控制器
  • 根据您的逻辑和回复做出您的计算
  • 根据回复提高div中的价格
  • 比用户点击添加到购物车时,在添加到购物车事件之前收听,并使用计算的新价格更新购物车商品价格
  • rest magento将自行完成

希望这对你有所帮助