我需要为带有角度7的房屋内的新照明系统创建价格配置器。不过,我使用普通js而不是typescript + sass对其进行编码。
第1页。用户选择自己想要的新建筑物或现有建筑物。.Wifi /电线[z1,z2 ...]
<label>New building</label>
<input type="radio" value="z1">
他应该在选项内部选择建筑物的大小(=这会在第3页上添加不同的控件集。)[-o1,-o2 ...]
<select><option value="-o1">small</option>...
他要构建的内容(灯光,空调,探测器...可能是多个)(=在第4页上添加一组不同的控件,或者添加它们)[y8,y9 ...] < / p>
我需要将theese值添加为变量内的字符串,然后采用此新变量并为其分配价格。 z1-o1-y8-i-5x2-24x2> z1 =新建筑物,o1 =小型建筑物,y8 =灯光(可以有多个选择->空调,探测器..),i =开/关+定时(可以是多个) options-> on / off + dimming ...),5x2表示此选项中控制器类型“ 5”为两次,“ 24”类型为两次。价格“ 5” = 1000和“ 24” =2000。
我不知道我是否做对了。这很复杂。如何才能做到这一点?谢谢
答案 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两次,它将被计数两次。
要使此功能有效,您需要确保所有不同的页面都可以访问同一阵列,以便它们可以将用户选择的选项推送到同一阵列中。如何执行此操作取决于项目的结构,但是您可以在此处查找灵感: