如何将字符串添加到变量

时间:2019-01-08 13:37:14

标签: javascript html css angular typescript

我需要为带有角度7的房屋内的新照明系统创建价格配置器。不过,我使用普通js而不是typescript + sass对其进行编码。

第1页。用户选择自己想要的新建筑物或现有建筑物。.Wifi /电线[z1,z2 ...]

<label>New building</label>
<input type="radio" value="z1">
  1. 他应该在选项内部选择建筑物的大小(=这会在第3页上添加不同的控件集。)[-o1,-o2 ...]

     <select><option value="-o1">small</option>...
    
  2. 他要构建的内容(灯光,空调,探测器...可能是多个)(=在第4页上添加一组不同的控件,或者添加它们)[y8,y9 ...] < / p>

  3. 选择控件(android,电视,钥匙串,移动检测器)(可能是多个)[-5x2-24x2]
  4. 计算价格

我需要将theese值添加为变量内的字符串,然后采用此新变量并为其分配价格。 z1-o1-y8-i-5x2-24x2> z1 =新建筑物,o1 =小型建筑物,y8 =灯光(可以有多个选择->空调,探测器..),i =开/关+定时(可以是多个) options-> on / off + dimming ...),5x2表示此选项中控制器类型“ 5”为两次,“ 24”类型为两次。价格“ 5” = 1000和“ 24” =2000。

我不知道我是否做对了。这很复杂。如何才能做到这一点?谢谢

1 个答案:

答案 0 :(得分:3)

如果每个选项都有一个价格,并且需要将价格加在一起,则可以这样操作:

首先使用每个选项和相应的价格创建一个对象:

Card Type: Visa

Card Name: Test

Card Number: 4012001037141112

Expiry Date : 05/20

CVV : 123

Card Type: Master

Card Name: Test

Card Number: 5123456789012346

Expiry Date : 05/20

CVV : 123

然后,您可以使用所有选项创建一个数组:

const prices = {
  z1: 4999
  z2: 7499
  o1: 13000
  ...etc
}

并像这样遍历数组确定价格:

const options = ['z1', 'o1', 'y8', 'i', etc];

如果使用这种方法,我建议不要将5x2加到选项中,而只需加5两次,它将被计数两次。

要使此功能有效,您需要确保所有不同的页面都可以访问同一阵列,以便它们可以将用户选择的选项推送到同一阵列中。如何执行此操作取决于项目的结构,但是您可以在此处查找灵感:

Angular Component Interaction