данные с функцией return против возврата простого объекта данных

1

Когда я начал с Vue.js, я прочитал о случае, когда вы возвращаете свойство данных с возвратом, а иногда и без него. Я больше не могу найти эту статью, почему я спрашиваю здесь.

То, как я использую его сегодня

 data: function () {
      return {
        myData : "data"
      }
    },

Но то, что я вижу в документации очень часто - больше не знаю разницы:

 data: {
    myData: "data"
  },
Теги:
vue.js

1 ответ

3

https://vuejs.org/2016/02/06/common-gotchas/#Why-does-data-need-to-be-a-function

Почему данные должны быть функцией?

В основных примерах мы объявляем data непосредственно как простой объект. Это связано с тем, что мы создаем только один экземпляр с new Vue(). Однако при определении компонента data должны быть объявлены как функция, возвращающая исходный объект данных. Зачем? Потому что будет много экземпляров, созданных с использованием того же определения. Если мы по-прежнему используем простой объект для data, этот же объект будет разделяться ссылкой по всему созданному экземпляру! Предоставляя функцию data, каждый раз, когда создается новый экземпляр, мы можем просто вызвать его, чтобы вернуть новую копию исходных данных.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню