В компоненте Vue.js мне нужно передать большой 2D-массив как свойство:
props: {
items: {
type: Array,
default: []
}
}
При прохождении массива я заметил, что это довольно медленно. осматривая массив в Chrome, я обнаружил, что все элементы теперь имеют тип Observer и все вложенные элементы заменяются парами реактивныйGetter / реактивныйSetter. Я могу себе представить, что установка этого 2D-массива довольно дорогая.
Для моего приложения я знаю, что массив всегда будет неизменным. Его можно заменить, но это всегда единое целое, а не отдельные элементы.
Вопрос:
- Есть ли возможность передать массив как один реактивный объект вместо очень большого пакета реактивных элементов?
- Какова лучшая практика в этом случае?