Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/22.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
ReactJS-是否可以阻止/排除对列进行排序?_Reactjs_Npm_Datatable_Frontend_Jsx - Fatal编程技术网

ReactJS-是否可以阻止/排除对列进行排序?

ReactJS-是否可以阻止/排除对列进行排序?,reactjs,npm,datatable,frontend,jsx,Reactjs,Npm,Datatable,Frontend,Jsx,我是ReactJS新手,目前正在创建一个使用我从这里获得的数据表库的项目: 我试图做的是,当单击其他列进行排序时,排除或防止第一列被重新排列/重新排序 这是我当前的数据表: 我试图做到这一点,以防止重新排序的行号或索引号,所以无论列已排序,第一列将以升序(从1到n) 如果这是不可能的,那么我可以采取什么其他方法使排名列始终按升序排列,而不管排序的是哪一列(排名列除外) 以下是我对该组件的全部代码: import React, {useEffect, useState} from 'react'

我是ReactJS新手,目前正在创建一个使用我从这里获得的数据表库的项目:

我试图做的是,当单击其他列进行排序时,排除或防止第一列被重新排列/重新排序

这是我当前的数据表:

我试图做到这一点,以防止重新排序的行号或索引号,所以无论列已排序,第一列将以升序(从1到n)

如果这是不可能的,那么我可以采取什么其他方法使排名列始终按升序排列,而不管排序的是哪一列(排名列除外)

以下是我对该组件的全部代码:

import React, {useEffect, useState} from 'react';
import 'bootstrap/dist/css/bootstrap.min.css';
import DataTable from 'react-data-table-component';

const CountryTable = ({items}) => {
    
var x=0;
for(var i=0; i<items.length; i++){
    items[i].index = i;
}

console.log(items);

return(
    <DataTable
        title="Covid-19 Stats"
        defaultSortAsc="false"
        responsive
        defaultSortField="cases"
        defaultSortAsc={false}
        striped
        highlightOnHover
        columns={
            [
                {
                    name: '#',
                    selector: 'index',
                    disableSortBy: true,
                },
                {
                    name: 'Country',
                    selector: 'country',
                    sortable: true,
                },
                {
                    name: 'Total Cases',
                    selector: 'cases',
                    sortable: true,
                },
                {
                    name: 'Additional New Cases',
                    selector: 'todayCases',
                    sortable: true,
                },
                {
                    name: 'Current Active Cases',
                    selector: 'active',
                    sortable: true,
                },
                {
                    name: 'Total Deaths',
                    selector: 'deaths',
                    sortable: true,
                },
                {
                    name: 'Additional New Deaths',
                    selector: 'todayDeaths',
                    sortable: true,
                },
                {
                    name: 'Total Recoveries',
                    selector: 'recovered',
                    sortable: true,
                },
                {
                    name: 'Additional New Recoveries',
                    selector: 'todayRecovered',
                    sortable: true,
                },
            ]
        }
        keyField={items.index}
        data={items}
    />  
);
}

export default CountryTable;
import React,{useffect,useState}来自“React”;
导入'bootstrap/dist/css/bootstrap.min.css';
从“反应数据表组件”导入数据表;
const CountryTable=({items})=>{
var x=0;

对于(var i=0;i您可以使用
选择器
属性提供要呈现的自定义值。在这种情况下,可以使用
索引
(可能需要
索引+1

import React,{useffect,useState}来自“React”;
导入'bootstrap/dist/css/bootstrap.min.css';
从“反应数据表组件”导入数据表;
const CountryTable=({items})=>{
var x=0;
对于(var i=0;i
);
}
导出默认CountryTable;

感谢您关于索引+1:)的说明,现在我可以删除在对象上添加属性的循环。这为我节省了几行代码和时间。谢谢!