Вопрос - правильный ли такой подход?
Ну раз вы намерены использовать vue - в корне неверный. Говоря "объект", вы имеете в виду элемент DOM-дерева, тогда как vue предполагает первичность данных.
Например - вроде бы сделано ровно по вашему описанию, но обратите внимание, что в основе данные, а не разметка - элементы создаются на основе массивов, элементы не модифицируются непосредственно, вместо этого изменяется содержимое массива.