我有一个嵌套的订单结构。如果我现在使用三斜杠指令,我有一个很长的数据路径,具体取决于文件,如下所示:
/// <reference path="../../../../global.d.ts" />
Run Code Online (Sandbox Code Playgroud)
我现在问自己的问题是有办法阻止它这样做吗?
我有以下数据收集
[{
id: '1',
date: '2017-01-01',
value: 2
},
{
id: '2',
date: '2017-01-02',
value: 3
},
{
id: '3',
value: 3
},
id: '4',
date: '2017-01-02',
value: 3
}]
Run Code Online (Sandbox Code Playgroud)
我想删除任何没有“日期”属性的对象。在上面的示例中,应删除 id 为 3 的对象。
完成的对象应该是这样的
[{
id: '1',
date: '2017-01-01',
value: 2
},
{
id: '2',
date: '2017-01-02',
value: 3
},
id: '4',
date: '2017-01-02',
value: 3
}]
Run Code Online (Sandbox Code Playgroud)
我试图用 lodash 查找并删除一个未定义的值。这是行不通的。该对象看起来与它进入时完全一样。
_.each(obj, (val) => {
_.remove(val, value => value['XXX-BUDAT'] === undefined);
});
Run Code Online (Sandbox Code Playgroud)
我如何为此目的使用 lodash?
提前致谢
我收到了多个pdf文件,必须从REST-API下载.
在auth和connect之后,我尝试使用request-promise下载文件:
const optionsStart = {
uri: url,
method: 'GET',
headers: {
'X-TOKEN': authToken,
'Content-type': 'applcation/pdf'
}
}
request(optionsStart)
.then(function(body, data) {
let writeStream = fs.createWriteStream(uuid+'_obj.pdf');
console.log(body)
writeStream.write(body, 'binary');
writeStream.on('finish', () => {
console.log('wrote all data to file');
});
writeStream.end();
})
Run Code Online (Sandbox Code Playgroud)
请求创建一个pdf(大约1-2MB),但我无法打开它.(Mac预览显示空白页面和adobe show =>
打开此文档时出错.阅读本文件存在问题(14).
我没有关于下载文件的API端点的信息.只是有这个卷曲:
curl -o doc.pdf --header "X-TOKEN: XXXXXX"
http://XXX.XXX/XXX/docs/doc1
Run Code Online (Sandbox Code Playgroud)
我的错误在哪里?
更新:
没有任何经验:-)
我想用 Jest 测试几个功能。所有函数都是返回函数的函数。
一个简单的例子:
export function csl(foo) {
return function(bar) {
return(bar)
};
}
Run Code Online (Sandbox Code Playgroud)
现在我想测试输入 = 返回是否是。我试试:
expect(() => csl("foo")).toBe("foo") // = received: [Function anonymous]
expect(csl("foo")).toBe("foo") // = received: undefined
Run Code Online (Sandbox Code Playgroud)
我如何测试这些功能?
我有一个异步循环来检查数组,如果找到特定值,它会循环另一个数组以匹配找到的值。
所以我的第一个实现。我打开一个异步循环并从数据库获取数据
mergedObject = [];
array1.forEach(async (item) => {
if (item.id == 'XXX') {
const dbInfo = await readDB();
Run Code Online (Sandbox Code Playgroud)
数据库信息,我想推入一个数组并构建一个 json 对象。
dbInfo.forEach(async (itemDB) => {
object.push({
id,
name,
..
..
Run Code Online (Sandbox Code Playgroud)
在循环结束时,我将新对象与“旧”对象合并
mergedObject = _.map(oldObject, (objs) => {
_.assign(objs, _.find(object, {
id: objs.id,
}));
});
Run Code Online (Sandbox Code Playgroud)
我遇到的问题是,在 forEach 内我正确地获取了日志。但是如果我想在 forEach (array1) 之外使用 mergedObject 我得到log: []
这是我第一次尝试异步。我之前使用过回调。如何访问 forEach 之外的 mergedObject?
javascript ×2
node.js ×2
arrays ×1
async-await ×1
jestjs ×1
lodash ×1
request ×1
types ×1
typescript ×1