<div>
<div v-for="foo in receivedData.foo" class="fixed-size">
<template v-if="!loading">
{{ foo }}
<template>
</div>
{{ receivedData.bar }}
</div>
data() {
return {
receivedData: {
foo: 10,
bar: 'Loading'
},
this.loading: true
}
},
<div v-if="loading" class="fixed-size">
Loading
</div>
<div v-else class="fixed-size">
<div v-for="foo in receivedData.foo">{{ foo }}</div>
{{ receivedData.bar }}
</div>
Меня бы устроили размеры компонента без данных с файлаЕщё раз: откуда ты их знаешь? Если они фиксированы в css и количество элементов в
receivedData.foo
тоже известно, то см. выше. Если же размеры зависят от текста, что прилетит и количество элементов может быть разным - размер может быть произвольным. object
нет categories
и у тебя нет проверки, что там именно IGoods
, а не object
. useState({} as IGoods);
, но таким образом ты посылаешь нахрен typescript и открываешь дорогу ошибкам. Лучше не надо.null
, описанный Александр - единственно верный.useState<IGoods>();
без лишних телодвижений, и тогда в state
у тебя будет IGoods | undefined
. type Desc = {
view: 'labeled'
label: string
} | {
view?: undefined
}
export interface ModalProps extends CuiModalProps {
namePopup?: string
isOpen?: boolean
withBorder?: boolean
className?: string
}
export const Component = (pros: ModalProps & Desc) => { ... };
<текущая дата> - (<начальный остаток таймера> - <запомненный остаток>)
и дальше как обычно, либо переписываешь <начальный остаток таймера>
как <запомненный остаток>
и ставишь дату старта как <текущая дата>
.