监听本地存储--实时更新数据



Vue.prototype.$setItem = function(key, newVal) {
                if (key === 'n_title') {
                    // 创建一个StorageEvent事件
                    let newStorageEvent = document.createEvent('StorageEvent');
                    const storage = {
                        setItem: function(k, val) {
                            localStorage.setItem(k, val);
                            // 初始化创建的事件
                            newStorageEvent.initStorageEvent('setNotice', false, false, k, null, val, null, null);

                            // 派发对象
                            window.dispatchEvent(newStorageEvent)
                        }
                    }
                    return storage.setItem(key, newVal);
                }
                if (key === 'n_content') {
                    // 创建一个StorageEvent事件
                    let newStorageEvent = document.createEvent('StorageEvent');
                    const storage = {
                        setItem: function(k, val) {
                            localStorage.setItem(k, val);
                            // 初始化创建的事件
                            newStorageEvent.initStorageEvent('setNotice', false, false, k, null, val, null, null);
                            // 派发对象
                            window.dispatchEvent(newStorageEvent)
                        }
                    }
                    return storage.setItem(key, newVal);
                }
 }


存储数据
this.$setItem('n_content', ‘content');
this.$setItem('n_title', 'title');


接收数据
window.addEventListener('setNotice', () => {
      ...该吃饭了
 })

你可能感兴趣的:(js,vue-js)