如何仅通过修改 loadDataList 方法实现 Vue 数据自动刷新?
如何仅修改 loadDataList 方法实现 Vue 数据自动刷新?
在前面的代码中,我们采用了重复创建 Vue 实例的方式来更新数据。这种方式会带来模板丢失的问题,导致数据无法正常刷新。
为了解决这个问题,我们需要改为使用 Vue 实例的 data 直接修改数据。这样做可以保持 Vue 的响应性,并在数据发生变化时自动更新视图。
具体修改如下:
function loadDataList() { // 获取 Vue 实例 var app = new Vue({ el: '#searchResult', data: { searchResultList: data } }); document.getElementById('searchBtn').onclick = function () { if (document.getElementById('searchIpt').value == '1') { console.log(1); // 修改 Vue 实例的 data app.searchResultList = [{ 'title': 'hello3' }, { 'title': 'hello4' }]; } else if (document.getElementById('searchIpt').value == '2') { console.log(2); app.searchResultList = [{ 'title': 'hello5' }, { 'title': 'hello6' }]; } }; }
修改后的代码中,我们直接修改了 Vue 实例的 data,从而触发了 Vue 的响应性机制,自动刷新了视图中的数据。这种方式避免了重复创建 Vue 实例导致的模板丢失问题,并实现了仅通过修改 loadDataList 方法更新数据的目的。
以上就是如何仅通过修改 loadDataList 方法实现 Vue 数据自动刷新?的详细内容,更多请关注其它相关文章!