我需要在数据库(猫鼬)中查询并获取一种特定产品(一年内)一年中每个月的销售额。
我是节点和 mongoDb 的新手,我提供了一个“虚拟”解决方案,我在数据库中查询并获取一个产品的所有结果,然后我使用 3 个循环在几个月内分割结果,但我认为它使用了更多资源比应有的资源多,如果填充了更多数据,它将使用更多资源,因此我需要帮助进行数据库查询来解决该问题。
这是我的代码的一部分:
假设需要从17-02-2020到17-02-2019的结果,我知道如果是从1 月到12 月,它将毫无意义地进入一个循环,但我还有另一部分代码控制它是否需要 1年份结果例如:01-01-2020到31-12-2020它不会执行下面的代码,我正在谈论的代码只有一个循环哈哈。
let startTime = performance.now();
Sales.find({productId:req.params.productId, "created_at": { "$gte": oneYearFromNow, "$lte": dateNow}}).then(result => {
let newMonthsArray= new Array();
let monthsArray = ['January','February','March','April','May','June','July','August','September','October', 'November','December'];
let months = {};
for(let i=parseInt(req.params.startDate.substring(5,7))-1; i<12; i++){
let year = parseInt(req.params.startDate.substring(0,4))-1;
let month = parseInt(req.params.startDate.substring(5,7));
newMonth = monthsArray[i] + '-' + year;
newMonthsArray.push(newMonth);
months[newMonth] = 0;
}
for(let i=0; i<parseInt(req.params.startDate.substring(5,7)); i++){
let year = parseInt(req.params.startDate.substring(0,4)); …Run Code Online (Sandbox Code Playgroud) mongoose mongodb node.js mongodb-query aggregation-framework
简介:我正在探索Vue Js,并在尝试制作动态数据表组件时陷入困境,我面临的问题是我无法通过 props 传递组件并将其呈现在表中。
问题:所以基本上我想做的是从v-data-table中的 headers prop 传递一些自定义组件,例如:
headers = [
{ text: 'Name', value: 'name' },
{
text: 'Phone Number',
value: 'phone_number',
render: () => (
<div>
<p>Custom Render</p>
</div>
)
},
{ text: 'Actions', value: 'actions' }
]
Run Code Online (Sandbox Code Playgroud)
所以从上面的代码我们可以看到我想从Phone Number header中的渲染函数渲染该段落,我之前在React Js中做过这件事,但是如果有人可以指点我,我找不到在Vue Js中做到这一点的方法朝着正确的方向前进会很棒。先感谢您。