Win + R, cmd, ping habr.com -l 1000 -t. Object.create(null)) вместо Map - работа с ним на порядок быстрее.Map соответствует порядку добавления и не может быть изменен постфактум. Вам следует для сортировки получить из Map массив, отсортировать, и либо создать новый Map из оного, либо заново добавить все значения в исходный, предварительно тот очистив. Map заранее с пустыми значениями - перезапись не меняет порядок. bodyв зависимости от присутствия компонента на странице(я правильно понял?) - делай это руками: добавляй body класс на created, убирай на destroyed. type ClearIndex<T> = {
[ P in keyof T as string extends P ? never : P ] : T[P]
};
class FOO implements ClearIndex<Service_FOO > {
methodFoo() {}
}Record<string, () => void> имеет "index signature", т.е. заявляет, что обращение по любому ключу stringвернёт () => void. Service_FOO расширяет этот тип(а не сужает), потому Service_FOO имеет ту же index signature и уточнённый конкретный метод. this.$refs.child.$refs.childOfChild.alias: {
'@component-1': {
'site1': path.resolve(__dirname, './site1/component-1.vue'),
'site2': path.resolve(__dirname, './site2/component-1.vue'),
}[process.env.TARGET]
}import Component1 from '@component-1';<component :is="var"/>. list2 никак не связан с item в отличие от testList. В list2 у вас должны лежать не цифры а объекты с данными, по которым будет строиться соответствующий item, сами же item'ы должны быть перечислены через v-for, чтобы когда list2 менялся - менялся и их порядок. immediate: true, и, так как он задан на самом компоненте, вызван он будет сразу перед хуком created, когда vue-компонент уже создан но ещё не примонтирован. Соответственен никакого canvas на странице в этот момент нет. mounted через this.$watch.