我是否可以禁用步骤2、3和4之外的复选框的其余部分?这些复选框是复选框组件的链接。然后,我将复选框组件链接到route的列propertyName:“ active”处。以下是路线代码的一部分。
export default Route.extend({
model() {
let results = {
workflow: {
columns: [
{
"propertyName": "step",
"title": "Step",
editable: false
},
{
"propertyName": "workflowName",
"title": "Workflow Name",
},
{
"propertyName": "preferredName",
"title": "Your Company Preferred Name",
},
{
"propertyName": "active",
"title": "Active",
component: "adk-workflow-select-row",
editable: false
},
{
title: "Edit",
component: "edit-row",
editable: false
}],
rows: [
{
step: '0',
workflowName: 'New',
preferredName: '新',
},
{
step: '1',
workflowName: 'Budget Approval',
preferredName: '预算批准',
},
{
step: '2',
workflowName: 'Creative',
preferredName: '创作的',
},
{
step: '3',
workflowName: 'Visualize',
preferredName: '想象',
},
{
step: '4',
workflowName: 'Implementation',
preferredName: '履行',
},
{
step: '5',
workflowName: 'In Play',
preferredName: '活性',
},
{
step: '6',
workflowName: 'Completed',
preferredName: '已完成',
},
{
step: '7',
workflowName: 'Canceled',
preferredName: '取消',
},
]
},
这是adk-workflow-select-row,它是复选框组件。下面的代码是我如何渲染复选框。这将启用所有复选框。但是我只需要启用步骤2、3和4复选框即可。
{{#paper-checkbox value=isSelected onChange=(action "clickOnRow" index record)}}{{/paper-checkbox}}
您的问题很难回答,因为您没有显示相关的模板代码。
[通常,您会以某种方式在模板中调用您的复选框,您可以将其包装在{{#if
中。您的代码非常通用,但是我想这可能在您的edit-row
组件中。像这样:
{{#if some condition}}
{{#paper-checkbox value=isSelected onChange=(action "clickOnRow" index record)}}{{/paper-checkbox}}
{{/if}}
现在重要的问题是使用什么条件。而这取决于您到底想要什么。您要如何配置?您是否想以某种方式保留全局数组,以使您的rows
中的复选框具有这样的步骤?
{
step: '2',
workflowName: 'Creative',
preferredName: '创作的',
showCheckbox: true,
},
根据此,您想要的可能是这样的东西:
{{#if record.showCheckbox}}
{{#paper-checkbox value=isSelected onChange=(action "clickOnRow" index record)}}{{/paper-checkbox}}
{{/if}}
通常,如果您是初学者,我可以强烈建议您首先尝试了解事情在不太普通的情况下如何工作。像您这样的通用解决方案可能很棒,但很快就会变得非常复杂。