typescript - type script_我怎样才能给它一个类型?
问题描述
现在我正在制作一个日期保管箱,我想用 sort 对日期进行排序。
我还不熟悉 TypeScript。
发生错误,难以解决...
错误发生在“”
modifiedTodos.sort((creat1: Task, creat2: Task) => creat1.goalDate - creat2.goalDate)
错误:算术运算的左侧必须是“any”、“number”、“bigint”类型或枚举类型。ts(2362)(参数)creat1:任务
这是我的代码。
import React, {useState, useEffect} from 'react'
interface Task {
id: number;
taskName: string;
status: string;
isImportant: boolean;
goalDate: string;
createdAt: string;
updatedAt: string;
}
enum DateType {
GoalDate = 'goalDate',
CreatedAt ='createdAt',
UpdatedAt = 'updatedAt'
}
const Filter: React.FC = () => {
const [todos, setTodos] = useState<Task[]>([]);
const [modifiedTodos, setModifiedTodos] = useState<Task[]>([])
const [status, setStatus] = useState<Status | string>("");
const [dateType, setDateType] = useState<string>('');
const [importance, setImportance] = useState<boolean | null>(null);
}
...
const sortDateType = (e: React.ChangeEvent<HTMLSelectElement>): void => {
const date_type = e.target.value;
setDateType(date_type)
switch (date_type) {
case 'goalDate':
if (modifiedTodos.length > 1) {
modifiedTodos.sort((creat1: Task, creat2: Task) => creat1.goalDate - creat2.goalDate)
console.log(modifiedTodos)
} else {
todos.sort((creat1, creat2) => creat1.createdAt - creat2.createdAt)
console.log(todos)
}
break;
case 'createdAt':
if (modifiedTodos.length > 1) {
} else {
}
break;
case 'updatedAt':
if (modifiedTodos.length > 1) {
} else {
}
break;
}
}
...
return (<div>
<div>
<select name="Date" id="Date" onChange={sortDateType}>
<option value={DateType.UpdatedAt}>latest update order</option>
<option value={DateType.CreatedAt}>latest create order</option>
<option value={DateType.GoalDate}>goal date</option>
</select>
</div>
</div>
)
}
export default Filter
解决方案
推荐阅读
- intellij-idea - 如何在 IntelliJ 插件中实现“语音气泡”?
- scala - 使用 map 创建数组的副本(具有泛型类型)会导致错误 [Scala]
- reactjs - 流:缺少 T 的类型注释
- java - 需要使用反射和注释从父类构造函数实例化子类成员
- java - com.querydsl.core.Tuple 的 ClassCastException
- python-3.x - 将单行数据输出到 csv 文件
- c# - 多个 ViewModel 之间的 WPF 通信
- angular - 如何实例化需要依赖注入的类
- javascript - 单击输入字段时,如何在 html input type='date' 中获取日期选择器
- r - R:基于中位数的年度复合栅格:如何获取每个像素的原始图层的索引?