Я портирую некоторый код из KnockoutJS в VueJS для работодателя, а в Knockout есть директива with
, которая позволяет ссылаться на свойства объекта без повторения имени объекта.
Как мне это сделать в VueJS? Я попытался изучить область действия слота и шаблона и даже попытался создать свою собственную пользовательскую директиву, которая изменила свойство data
в указанном ссылочном VNode, но я не смог заставить его работать.
Текущий код:
<div v-for="item in items">
<div>{{item.name}}</div>
<div>{{item.phone}}</div>
<div>{{item.value}}</div>
</div>
Псевдо-код:
<div v-for="item in items" v-with="item">
<div>{{name}}</div>
<div>{{phone}}</div>
<div>{{value}}</div>
</div>
Это просто для удобства чтения. Я спрашиваю об этом, поскольку уже выполнил задачу, используя повторяющиеся идентификаторы объекта при обращении к его свойствам, но я хотел спросить, если что-то упущено.
Кто-то в чатах VueJS предложил использовать магазин Vuex, но их пример, похоже, не отвечал моей заботе о повторяющихся именах.