我正在开发产品配置器。我使用 Ractivejs。
我有两个问题。
- 如果您在 step1 中检查 option1,则在 step2 中也会检查 option1(为什么?)
- 如果您在第一步中选择产品 2,我需要一种隐藏蓝色的方法
模板:
{{#steps[currentStep].options:i}}
<div class='radio'>
<label>
<input type='radio' name='group{{currentStep}}' id='radio{{currentStep}}{{i}}' value='option{{currentStep}}{{i}}'>
{{name}}
</label>
</div>
{{/steps[currentStep].options}}
<button on-click='gotoStep: {{currentStep + 1}}'>next</button>
Javascript:
var ractive, stepsData;
stepsData = [
{ name: 'Products', options: [
{ name: 'Product 1', price: 100 },
{ name: 'Product 2', price: 120 }
]},
{ name: 'Color', options: [
{ name: 'Black', price: 0},
{ name: 'White', price: 5 },
{ name: 'Blue', price: 20 }
]}
];
ractive = new Ractive({
el: '#template',
template: '#tempMain',
data: {
steps: stepsData,
currentStep: 0
}
});
ractive.on( 'gotoStep', function ( event, step ) {
this.set( 'currentStep', step );
});