json数据的日期格式为ISO 8601格式我想将格式更改为dd/mm/yy

问题描述 投票:0回答:1

从“react”导入 React, { useState };从“材料反应表”导入{MaterialReactTable};从“fuse.js”导入保险丝;从“@mui/material”导入{滑块、文本字段、图标按钮、抽屉};从“@mui/x-date-pickers”导入{DatePicker};从“./GroupingDropDown”导入 GroupingDropdown;从“./DateTimeFormatter”导入DateTimeFormatter;从“./CategorySubcategoryFilter”导入 CategorySubcategoryFilter;从“@mui/icons-material/FilterList”导入 FilterListIcon;从“@mui/icons-material/Sort”导入 SortIcon;从“@mui/icons-material/Group”导入 GroupIcon;从“./SortingFilter”导入SortingFilter; const DataTable = ({ data, columns }) => { const [columnVisibility, setColumnVisibility] = useState({}); const [globalFilter, setGlobalFilter] = useState(""); const [nameFilter, setNameFilter] = useState(""); const [categoryFilter, setCategoryFilter] = useState([]); const [subcategoryFilter, setSubcategoryFilter] = useState([]); const [priceRange, setPriceRange] = useState([0, 1000]); const [createdAtRange, setCreatedAtRange] = useState([null, null]); const [分组,setGrouping] = useState([]); const [showFilterDrawer, setShowFilterDrawer] = useState(false); const [showSortingDrawer, setShowSortingDrawer] = useState(false); const [showGroupingDrawer, setShowGroupingDrawer] = useState(false); const [sortedData, setSortedData] = useState(data); const fusion = new Fuse(sortedData, { key: ["name"], includeMatches: true, }); const handleSorting = (columnKey) => { const Sorted = [...sortedData].sort((a, b) => { if (a[columnKey] < b[columnKey]) return -1; if (a[columnKey] > b[columnKey]) return 1; return 0; }); setSortedData(已排序); }; const FilteredData = data.filter((item) => { return ( (fuse .search(globalFilter) .map((result) => result.item.name) .includes(item.name) || globalFilter === " ") && (fuse .search(nameFilter) .map((result) => result.item.name) .includes(item.name) || nameFilter === "") && (categoryFilter.length === 0 | |categoryFilter.includes(item.category)) && (subcategoryFilter.length === 0 || subcategoryFilter.includes(item.subcategory)) && item.price >=priceRange[0] && item.price <= priceRange[1] && (createdAtRange[0] === null || createdAtRange[1] === null || (new Date(item.createdAt) >=createdAtRange[0] && new Date(item.createdAt) <= createdAtRange[1])) ); }); const handleGroupingChange = (columnIds) => { setGrouping(columnIds); setShowGroupingDrawer(false); }; return ( <>

setGlobalFilter(e.target.value)} placeholder="搜索..." style={{ marginRight :“10px”,填充:“8px”,边框:“1pxsolid #ccc”,borderRadius:“5px”,fontSize:“14px”,轮廓:“none”, }} /> setNameFilter(e.target.value )} placeholder="按名称过滤..." style={{ marginRight: "10px", padding: "8px", border: "1pxsolid #ccc", borderRadius: "5px", fontSize: "14px", 轮廓: "无", }} /> setShowFilterDrawer(true)}> setShowSortingDrawer(true)}> setShowGroupingDrawer(true)}>
{ if ( cell.column.accessorKey === "创建于” || cell.column.accessorKey === "updatedAt" ) { return ; return cell.renderedCellValue; }} // DateTimeFormatter.jsx 从“react”导入 React;从“dayjs”导入dayjs; const DateTimeFormatter = ({ value }) => { console.log("原始值:", value); // 调试语句 const dateTime = dayjs(value); console.log("格式化日期:", dateTime.format("DD/MM/YY")); // 调试语句 const formattedDateTime = dateTime.format("DD/MM/YY");返回 {formattedDateTime}; };导出默认的DateTimeFormatter; //json.data { "id": 1, "name": "营养附件", "category": "健康", "subcategory": "营养", "createdAt": "2016-03-24T05:28: 03.099+05:30", "updatedAt": "2016-03-24T05:28:03.099+05:30", "price": 24.99, "sale_price": 21.95 }, 在我的代码中,json 数据的日期格式不同我希望日期格式类似于 dd/mm/yy 任何人都可以帮助解决问题在这些 stackoverflow 中在发布问题时显示错误看起来您的帖子主要是代码;请添加更多详细信息。

在我的代码中,json数据的日期格式不同,我希望日期格式像dd/mm/yy,任何人都可以帮助解决问题在这些stackoverflow中,在问题发布时显示错误看起来你的帖子主要是代码;请添加更多详细信息。

reactjs user-interface material-ui project react-table
1个回答
0
投票

您有 ISO8601 格式的日期。

您可以从此格式的任何字符串创建一个新的 Date 对象,然后提取日期的不同部分以组成您喜欢的格式

const date = new Date("2016-03-24T05:28:03.099+05:30");

const day = date.getDate().toString().padStart(2, '0');
const month = (date.getMonth() + 1).toString().padStart(2, '0'); // months in JS are indexed from 0
const year = date.getFullYear().toString().slice(-2); // 2 last digits

const formattedDate = `${day}/${month}/${year}`;

console.log(formattedDate ); // Result: "24/03/16"

希望对您有帮助。

© www.soinside.com 2019 - 2024. All rights reserved.