Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/452.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在将每个用户的用户名设置为搜索参数后,如何为其加载页面?_Javascript_Firebase_Google Cloud Firestore - Fatal编程技术网

Javascript 在将每个用户的用户名设置为搜索参数后,如何为其加载页面?

Javascript 在将每个用户的用户名设置为搜索参数后,如何为其加载页面?,javascript,firebase,google-cloud-firestore,Javascript,Firebase,Google Cloud Firestore,长话短说,我想到了如何“给每个用户自己的页面”。在instagram上,用户的页面应该是https:instagram.com/{username},在我的项目中,在将用户名作为url参数传递并将其余数据放入查询中之后,基本相同,这样我就可以调用它。当我点击每个用户的页面时,我会被重定向到“用户页面”,我会得到一个错误,上面写着“BadRequestError:Bad Request” 这是单击用户时发生的情况(参数被添加到url) 我做错了什么/为什么没有显示单独的页面?我不确定您为什么使用“

长话短说,我想到了如何“给每个用户自己的页面”。在instagram上,用户的页面应该是https:instagram.com/{username},在我的项目中,在将用户名作为url参数传递并将其余数据放入查询中之后,基本相同,这样我就可以调用它。当我点击每个用户的页面时,我会被重定向到“用户页面”,我会得到一个错误,上面写着“BadRequestError:Bad Request”

这是单击用户时发生的情况(参数被添加到url)


我做错了什么/为什么没有显示单独的页面?

我不确定您为什么使用“%”,但应该将其更新为“&”

function userClicked() {
                var i = 0;
                const queryString = window.location.href;
                console.log(queryString.concat('/', username));
                window.location = queryString.concat('/', 'username=', username, '&', 'name=', fln)
            }
此外,为了简单起见,我更喜欢下面的代码

function userClicked() {
    var i = 0;
    window.location = `${window.location.href}/username=${username}&name=${fln}`
}

除了SoftDev的帖子:

首先,您应该将
%
替换为
&
。原因是%用于url编码。%例如,20可能表示空格,%21可能表示感叹号。符号
&
用于指示查询参数。其中第一个查询参数由
引导,所有后续查询参数由
引导

例如:
https://stackoverflow.com/index.html?name=test&username=larssy1&age=99

再次回到(从SoftDev复制/粘贴)(请注意,我确实将
/
更改为

function userClicked() {
  var i = 0;
  const queryString = window.location.href;
  console.log(queryString.concat('/', username));
  window.location = queryString.concat('?', 'username=', username, '&', 'name=', fln)
}
但是,除此之外,最好查找
window.location.href
。的含义,因为这表明当前正在访问的页面

例如:此stackoverflow主题的
窗口.location.href
”https://stackoverflow.com/questions/63734257/how-do-i-load-a-page-for-each-user-after-setting-their-username-as-a-search-para“

在您的代码中,这将导致我们导航到
https://stackoverflow.com/questions/63734257/how-do-i-load-a-page-for-each-user-after-setting-their-username-as-a-search-para/username=test&name=larssy1

有关
window.location
的所有可能属性和含义,您可以参考此网页:或此Mozilla网页:


我猜你想使用
主机名
源代码

我需要设置路由吗?这是为了什么?哦,我明白了。你解释得很好:)。谢谢:)
function userClicked() {
  var i = 0;
  const queryString = window.location.href;
  console.log(queryString.concat('/', username));
  window.location = queryString.concat('?', 'username=', username, '&', 'name=', fln)
}