属性'string'上不存在属性'split'号码|串[]'

时间:2018-03-26 13:59:44

标签: javascript jquery typescript

我在ts文件中有功能

这是代码。

 const update_price_on_button_hotel = function(form) {
    let price_part, price_per_pax;
    let price = parseFloat(form.attr('data-price'));
    if (form.attr('data-price_per_pax')) { price_per_pax = parseFloat(form.attr('data-price_per_pax')); }
    if (form.attr('data-price_part')) { price_part = parseFloat(form.attr('data-price_part')); }

    if ($('.step_1_air_form').length > 0) {
      $('input[type=checkbox]:checked', $('.step_1_air_form')[0]).each(function() {
        price += parseFloat($(this).attr('data-price'));
        if ($(this).attr('data-price_per_pax')) { price_per_pax += parseFloat($(this).attr('data-price_per_pax')); }
        if ($(this).attr('data-price_part')) { return price_part += parseFloat($(this).attr('data-price_part')); }
      });
    }

    $('.room', form).each(function() {
      const input = $(this).find('input[type=radio]:checked');
      price += parseFloat(input.attr('data-price'));
      if (input.attr('data-price_per_pax')) { price_per_pax += parseFloat(input.attr('data-price_per_pax')); }
      if (input.attr('data-price_part')) { return price_part += parseFloat(input.attr('data-price_part')); }
    });

    form.find('input[type=submit]').each(function() {
      if ($(this).val() !== '') {
        return $(this).val($(this).val().split(':')[0] + ": " + accounting.formatMoney(price));
      } else {
        return $(this).val(accounting.formatMoney(price));
      }
    });

    form.find('.total-price .price').html(accounting.formatMoney(price));
    if (form.attr('data-price_per_pax')) { form.find('.pax-price .price').html(accounting.formatMoney(price_per_pax)); }
    if (form.attr('data-price_part') && (price_part > 0) && (form.find('.resurs .resurs_price').length > 0)) {
      return form.find('.resurs .resurs_price').html(accounting.formatMoney(price_part) + '/mån');
    }
  };

但在这部分

form.find('input[type=submit]').each(function() {
          if ($(this).val() !== '') {
            return $(this).val($(this).val().split(':')[0] + ": " + accounting.formatMoney(price));
          } else {
            return $(this).val(accounting.formatMoney(price));
          }
        });

我有错误。

Property 'split' does not exist on type 'string | number | string[]'.
  Property 'split' does not exist on type 'number'.

我该如何解决?

0 个答案:

没有答案