window.location.pathname
时间: 2023-04-29 21:02:52 浏览: 248
window.location.pathname是JavaScript中的一个属性,它返回当前页面的路径部分,不包括域名和查询参数。例如,如果当前页面的URL是https://www.example.com/path/to/page.html?query=string,那么window.location.pathname将返回"/path/to/page.html"。
相关问题
window.location.pathname 和 window.location.href
`window.location.pathname` 是 JavaScript 中的一个属性,它表示浏览器当前页面URL路径名的部分,不包括协议、主机名以及查询字符串。例如,如果URL是 `http://example.com/path/to/page?param=value`,`pathname` 就会是 `/path/to/page`。
而 `window.location.href` 则返回完整的 URL,包括协议 (`http:` 或 `https:`)、主机名 (`example.com`)、路径名 (`pathname`)、查询字符串 (`?param=value`) 和片段标识符 (`#section`). 这个属性包含了页面在服务器上的完整地址。
这两个属性常用于前端网页导航、路由管理或处理URL的变化。
constructor(props) { super(props); const detailSaveData = sessionStorageUtil.read('detailSaveData'); this.state = { indocno: this.props.location.state.indocno, type: this.props.location.state.type, selectedTab: detailSaveData ? detailSaveData.selectedTab : 0, data: {}, pathname: window.location.pathname, visibleModal: false, time: new Date(), } } 设置this.props.location.state.indocno为undfind时indocno为“”
可以在 constructor 中添加一个判断语句,来避免出现 undefined 的情况,示例如下:
```
constructor(props) {
super(props);
const detailSaveData = sessionStorageUtil.read('detailSaveData');
const indocno = this.props.location.state.indocno || ""; // 添加判断语句
this.state = {
indocno: indocno,
type: this.props.location.state.type,
selectedTab: detailSaveData ? detailSaveData.selectedTab : 0,
data: {},
pathname: window.location.pathname,
visibleModal: false,
time: new Date(),
};
}
```
这样当 `this.props.location.state.indocno` 为 undefined 时,就会将 `indocno` 设置为空字符串。
阅读全文