在这种情况下,我认为没有办法动态地实现这一点,因为Angular Materialstepper
中的组件中没有为此目的的选项,这是 CSS 的唯一方法,但既然你想控制它们的条件,那对你来说不是一个选项.
另一种方法是通过在 TS 中的硬编码来做到这一点,假设你有三个步骤来看看这个
stepperArr: {label: string, body: string}[] = [{
label: 'first step',
body: `<input type="text" placeholder="step1" required>`
},{
label: 'second step',
body: `<input type="text" placeholder="step2" required>`
},{
label: 'third step',
body: `<input type="text" placeholder="step3" required>`
}];
控制他们
if (true) {
this.stepperArr.push({
label: 'new step',
body: `<input type="text" placeholder="step4">`
});
}
if (false) {
this.stepperArr.splice(index_start, delete_count); // index_start: the index of item in array, delete_count: how many items to delete
}
就像我说的那样,在这种情况下,您必须对其进行硬编码,这样您就可以处理删除或添加到它们的所有步骤。