Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/extjs/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/73.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
extjs有条件地呈现列_Extjs_Gridpanel - Fatal编程技术网

extjs有条件地呈现列

extjs有条件地呈现列,extjs,gridpanel,Extjs,Gridpanel,假设我有一个gridpanel,有两列:Name和Salary,相应存储的dataIndex具有相同的名称 在extjs中,渲染器函数如下所示: function(value, metaData, record, rowIndex, colIndex, store){} 现在,当我根据项目名称调用randerer时,如果我希望进行不同的渲染,我该如何进行? e、 g 这句话的正确语法是什么?嗯,从语法上讲,这是正确的。但是if语句中的条件不正确。value变量保存正在渲染的值,因此如果需要检查

假设我有一个gridpanel,有两列:Name和Salary,相应存储的dataIndex具有相同的名称

在extjs中,渲染器函数如下所示:

function(value, metaData, record, rowIndex, colIndex, store){}
现在,当我根据项目名称调用randerer时,如果我希望进行不同的渲染,我该如何进行? e、 g


这句话的正确语法是什么?

嗯,从语法上讲,这是正确的。但是if语句中的条件不正确。
value
变量保存正在渲染的值,因此如果需要检查,它应该相当简单

在您的情况下,您试图提供薪水或姓名?
record
变量保存整个记录。没有
记录。名称
字段。记录对象包含以下字段:

  • 数据->是一个包含数据的对象。(使用时应使用此选项)
  • id->记录的id。这由商店中的
    idProperty
    指定
  • json->json格式的数据
  • 商店->你的商店本身
  • 原型->原型
  • 因此,如果要进行任何比较和检查,则需要使用
    record.data.

    在您的情况下,姓名和薪水都有一个数据索引,因此代码为:

    function(value, metaData, record, rowIndex, colIndex, store) {
    
        if(record.data.property == Name) {
                //render logic for name
        }
        else if(record.data.property == Salary) {
                // render logic for salary
        }
    }
    

    最后,此函数将进入列的renderer属性。

    从语法上讲,这是正确的。但是if语句中的条件不正确。
    value
    变量保存正在渲染的值,因此如果需要检查,它应该相当简单

    在您的情况下,您试图提供薪水或姓名?
    record
    变量保存整个记录。没有
    记录。名称
    字段。记录对象包含以下字段:

  • 数据->是一个包含数据的对象。(使用时应使用此选项)
  • id->记录的id。这由商店中的
    idProperty
    指定
  • json->json格式的数据
  • 商店->你的商店本身
  • 原型->原型
  • 因此,如果要进行任何比较和检查,则需要使用
    record.data.

    在您的情况下,姓名和薪水都有一个数据索引,因此代码为:

    function(value, metaData, record, rowIndex, colIndex, store) {
    
        if(record.data.property == Name) {
                //render logic for name
        }
        else if(record.data.property == Salary) {
                // render logic for salary
        }
    }
    

    最后,此函数将进入列的renderer属性。

    是否应为:record.data.property==“Name”?(加引号或不加引号)我只放了一个示例条件。它应该符合您的逻辑。如果您正在检查字符串“Name”,那么它应该在引号中。应该是:record.data.property==“Name”?(加引号或不加引号)我只放了一个示例条件。它应该根据您的逻辑。如果您正在检查字符串“Name”,那么它应该在引号中。