только date_trunc(text,interval)
и date_trunc(text,timestamp)
являются неизменяемыми
create index on test (date_trunc('month', foo::timestamp ));
, проблема с foo at time zone 'GMT'
заключается в том, что выражение foo at time zone 'GMT'
само по себе не является неизменным.
Как указано в документации здесь , функция onChange
выглядит следующим образом:
function (
One of <
Object,
Array<Object>,
null,
undefined
>,
{
action required One of <
"select-option",
"deselect-option",
"remove-value",
"pop-value",
"set-value",
"clear",
"create-option"
>
}
) => undefined
и констант e
, который вы объявляете, фактически имеют следующую структуру: [1111 ]
{
label: ...,
value: ...
}
, поэтому здесь нет клавиши target
, но прямо e.value
, если вам нужен доступ к реквизиту value
.
Вот живой пример с console.log
, чтобы вы могли видеть, что происходит.
Замените функцию onChangeTmpType следующим образом.
onChangeTmpType = (e) => {
this.setState({
tmp_type: e.value
})
}
Причиной этого, как (@Laura упоминалось ранее), является то, что в e от реагировать на отбор только значение и метка.