我有一个日历组件,我想标记第二天的日期(nextDay)。我正在使用react-native-calendars。
export default class CustomCalender extends React.Component {
render() {
const today = moment().format("YYYY-MM-DD");
const nextDay = moment().add(1, 'days').format("YYYY-MM-DD"); // 2017-08-29
const mark = {
'2017-08-16': {selected: true, marked: true}
};
return (
<View style={styles.container}>
<Text style={styles.labelText}>Select a date</Text>
<Calendar
minDate={today}
onDayPress={(day) => {
console.log('selected day', day)
}}
markedDates={mark}
/>
</View>
)
}
}
如何使用nextDay
(即2017-08-29)的数据作为商标常量,而不是像“2017-08-16”这样做?
我试过这种方式:
const mark = {
today: {selected: true, marked: true}
};
但不是使用today
的值(即2017-08-29),而是使用today
本身作为密钥的名称。
答案 0 :(得分:0)
首先将标记定义为空对象。然后分配它。
const today = moment().format("YYYY-MM-DD");
const mark = {};
mark[today] = {selected: true, marked: true};
答案 1 :(得分:0)
一个简单的例子可能会帮助您更好地理解它:
let foo = 'hello';
let bar = {};
//using the value stored inside foo as a key for the object
bar[foo] = 'world';
console.log(bar);
//using 'foo' directly as a key instead of the value it stored
bar = {
foo: 'world'
}
console.log(bar);