Подтвердить что ты не робот

В ExtJS, лучше ли вызывать Model.save() или Store.Sync()?

И каковы последствия каждого из них?

Я вижу, что Model.save(), например, автоматически обновляет модель с результатами от сервера. Я не уверен, что делает sync().

4b9b3361

Ответ 1

автоматически обновляет модель с результатами с сервера

Store.sync() обновляет измененные записи (при условии, что вы правильно настроили ответ сервера).

Итак, технически оба метода делают то же самое. Однако, на мой взгляд, вы можете использовать Model.save() только в одном случае: когда у вас нет store. Зачем? Потому что, когда у вас есть хранилище и тем не менее вы используете Model.save(), это означает, что у вас есть настройка подключения (прокси) для store и model. И это означает, что у вас есть дублированный код, который потенциально сложнее поддерживать.

Итак, чтобы суммировать, вы используете Model.save(), только если вы используете автономную модель, без сохранения (это может быть, когда у вас есть form, который не подключен к какой-либо сетке. вы создаете автономную модель для такой формы), и вы используете Store.sync() в других случаях.