javascript - 将值直接传递给 http 请求与之前定义之间的区别
问题描述
我这里有两个功能:
// creates url /messages?data=undefined ->results into error
update1() {
this.httpClient.get <any>> (
this.dataService.url + '/messages?data=' + ( < any > window).settings.seq || '0', {
headers: this.dataService.headers
}
).subscribe((result: aby ) => {
if (!result)
return;
// ...
}, (error: any) => {
this.dataService.HandleError(error);
});
}
// creates url /messages?data=0 -> works
update2() {
let seq = ( < any > window).settings.seq || '0';
this.httpClient.get <any>> (
this.dataService.url + '/messages?data=' + seq, {
headers: this.dataService.headers
}
).subscribe((result: aby ) => {
if (!result)
return;
// ...
}, (error: any) => {
this.dataService.HandleError(error);
});
}
(<any>window).settings.seq
如果未定义(它不使用'0'值),第一个不起作用,但是如果我将它定义为变量(如示例中update2()
),它工作正常并使用'0'。
这可能是一个愚蠢的问题,但有人可以解释我的区别吗?第一种方法不应该很好用吗?
解决方案
推荐阅读
- sql - 具有聚合函数的 1 对多 Select 查询(Adventure Works 数据库)
- clang-format - Clang 格式。如果行太长,如何使函数参数单独一行?
- c# - 无法在 Xamarin 中添加新的空白页
- java - 如何将字节数组发送到特定的接收者
- ios - ReplayKit - finishBroadcastWithError 不起作用
- c# - 如何在 net.core 3.1 中连接打开的 excel 应用程序?
- python-asyncio - python:强制 aiohttp 不规范化 url
- ios - 为什么我的 iOS 设备不扫描广告扩展程序?
- twitter-bootstrap - 如何使用 bootstrap-colorpicker 仅以“#ffffff”格式获取所选颜色?
- python - 错误:命令出错,退出状态为 1:python setup.py egg_info 检查日志以获取完整的命令输出。如何修复错误?