window.history.back() 返回上一页 有时候需要点击多次

今天遇到两个小问题记录一下

1-window.history.back() 返回上一页 有时候需要点击多次,这是为什么呢?
原来Windows下的window.history.back()后退后返回的不只是前一个页而是前一个页的状态。如果一个页我修改了3次那必须后退3次才能回到前一个页。
怎么处理这种情况呢,我在网上找了下,并没有特别契合我现在的情况的,无非就是 让我写具体的跳转地址,但凡我能知道具体地址,我还用纠结嘛。。
最终经过各种测试 实操有效的代码来了,
下面展示一些 内联代码片

history.back();location.reload();
window.history.back()

这个也就意味着 先刷新页面清除状态,再进行返回上一页,完美解决!

2.这个就是随笔写上的,因为好久之前用过这个,没想到,隔了两三年没用,给忘记了,费了好一番功夫才查到,尴尬了也是

// 先是变量名字
data() return {
	value1: 'a',
	value2: 'b',
	value3: 'c'
}
//那么怎么循环给他们赋值呢 就是这样咯
this['value'+i] = value;

以上属于个人随笔,有不对的请指正,谢谢!

### 使用 `window.location` 对象实现页面跳转或刷新 JavaScript 中的 `window.location` 对象提供了多种属性和方法来控制浏览器的行为,包括页面跳转、刷新以及历史记录管理。对于想要执行页面跳转或刷新的操作,除了常见的 `window.location.href` 和 `window.location.reload()` 方法外,还有其他几个有用的选项。 #### 1. 使用 `window.location.assign` 此方法用于加载一个新的文档。它类似于设置 `window.location.href` 属性的效果: ```javascript function navigateToNewPage() { window.location.assign('https://example.com'); } ``` 这种方法会将新URL添加到浏览历史中,允许用户通过浏览器的前进/后退按钮返回之前的页面[^5]。 #### 2. 使用 `window.location.replace` 与 `.assign()` 不同的是,`.replace()` 方法不会保存当前页面的历史条目;相反,它用指定的新位置取代了当前的位置。这意味着一旦调用了这个函数并导航到了另一个页面,则无法再通过浏览器的回退功能回到原来的页面: ```javascript function redirectToLoginPage() { window.location.replace('/login.html'); } ``` 这种方式适合处理一次性操作后的重定向场景,比如登录成功后转向首页等情形。 #### 3. 刷新页面 如果只是希望刷新当前页面而不是改变其路径,那么可以直接调用 `window.location.reload()` 函数,默认情况下这将以GET请求的方式重新获取资源。也可以传递一个布尔参数给 reload 方法来自定义行为(true 表示强制从服务器而非缓存加载): ```javascript function refreshCurrentPage(forceReload) { window.location.reload(forceReload); } ``` 需要注意的是,在某些框架内(如Vue Router),直接修改 `href` 可能不会触发预期中的路由变化,这时应该考虑使用相应框架提供的API来进行更精确地控制[^4]。 #### 关于 `window.location.go` 实际上并没有名为 `go` 的成员存在于 `location` 对象上。通常所说的 “前进” 或者 “后退”,是指利用 `history.back()` / `history.forward()` 来模拟用户的交互动作。这些命令分别对应着点击浏览器上的“后退”和“前进”按钮的功能。 ```javascript // 返回至上一页history.back(); // 前进至下一页history.forward(); ``` 另外还可以通过 `history.go(n)` 接口按需移动多个步数,其中 n 是相对于当前位置向前(-n)或向后(+n)移动的数量: ```javascript // 移动两个页面之前 history.go(-2); // 移动三个页面之后 history.go(3); ``` 以上就是除开 `window.location.href` 之外的一些常用页面跳转方式及其特性介绍。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值