3 回答

TA贡献1859条经验 获得超6个赞
常量的作用域是它们声明的块(在分别与 和关联的和之间,{并且在该范围之外不可访问。}ifelse
在块外定义一个变量并使用它。
fetchURL(page,checked) {
let apiUrl;
if(checked)
{
apiUrl = 'firstApiURL'
}
else {
apiUrl = 'secondApiURL';
}
axios.get(apiUrl)......
}
然后,您可以使用默认值而不是else.
fetchURL(page,checked) {
let apiUrl = 'secondApiURL';
if(checked)
{
apiUrl = 'firstApiURL'
}
axios.get(apiUrl)......
}
或者进一步简化并仍然使用 const
fetchURL(page, checked) {
const apiUrl = checked ? 'firstApiURL' : 'secondApiURL';
axios.get(apiUrl);
}

TA贡献1828条经验 获得超4个赞
在您的代码中,const它们在块范围内定义,{}因此它们在外部未定义。
使用let以便您可以分配给它,并在if/之外声明它else
let apiUrl;
if (checked) {
apiUrl = 'firstApiURL'
} else {
apiUrl = 'secondApiURL';
}
axios.get(apiUrl)......
}
有关块语句和范围的更多信息,请阅读https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/statements/block

TA贡献1829条经验 获得超13个赞
const关键字 create 常量仅存在于创建它们的块中(let而const单词创建块范围变量)。
if() { }和else { }是我们创建的块apiUrl,并且 ``apiUrl 不存在于它们之外。
你可以写let变量外if和else,然后写信给它一定的价值。例如:
fetchURL(page,checked) {
let apiUrl;
if(checked)
{
apiUrl = 'firstApiURL'
}
else {
apiUrl = 'secondApiURL';
}
axios.get(apiUrl)......
}
添加回答
举报