怎么把参数存到缓存里,并且加载页面的时候显示上一次天填写的值
时间: 2024-09-23 16:11:12 浏览: 36
js清除浏览器缓存的几种方法
在网页开发中,将用户输入的参数保存到缓存并在下次页面加载时显示之前最后一次的值,通常会用到浏览器缓存、服务器端缓存技术,如Redis、Memcached等。这里以JavaScript和Node.js为例简单说明:
1. **浏览器缓存** (Local Storage 或 Session Storage):
- JavaScript 的 `localStorage` 和 `sessionStorage` 可以存储键值对数据,它们会在用户的浏览器生命周期内持久存在或只保留当前会话。
- 对于日期字段,你可以将其转换成字符串形式,比如 "last_entry_date" = new Date().toISOString(),然后存储。
```javascript
// 存储参数
function saveToCache(key, value) {
localStorage.setItem(key, JSON.stringify(value));
}
// 加载页面时读取并显示
function loadFromCache(key) {
let cachedValue = localStorage.getItem(key);
if (cachedValue) {
return JSON.parse(cachedValue);
} else {
// 如果无缓存则返回默认值或空
return null;
}
}
```
2. **服务器端缓存** (例如 Redis):
- 使用 Node.js 的 `redis` 库,可以设置过期时间来自动清理旧数据。
```javascript
const redis = require('redis');
const client = redis.createClient();
saveToCache = async (key, value, ttlSeconds) => {
await client.setex(key, ttlSeconds, JSON.stringify(value));
};
loadFromCache = async (key) => {
try {
const cachedData = await client.get(key);
if (cachedData) {
return JSON.parse(cachedData);
} else {
return null; // 或者从数据库或其他地方获取默认值
}
} catch (err) {
console.error(err);
return null;
}
};
```
注意,缓存策略应根据实际需求调整,比如考虑数据更新频率、安全性等因素。同时,为了用户体验,加载时最好检查缓存是否过期或失效。
阅读全文