小编sai*_*web的帖子

每次执行查询时聚合 $graphLookup 都会以不同的顺序检索结果?

我有以下数据集(类别):

[{
  "_id": 1,
  "name": "Root",
  "parent": null
},
 {
   "_id": 2,
   "name": "Sub - Level 1",
   "parent": 1
 }, {
   "_id": 3,
   "name": "Sub - Level 2",
   "parent": 2
 }, {
   "_id": 4,
   "name": "Sub - Level 3",
   "parent": 3
 }
]
Run Code Online (Sandbox Code Playgroud)

我正在该数据集上运行以下管道以递归方式获取树:

[{
  '$match': {
    '_id': 1
  }
}, {
  '$graphLookup': {
    'from': 'categories', 
    'startWith': '$_id', 
    'connectFromField': '_id', 
    'connectToField': 'parent', 
    'as': 'menu'
  }
}, {
    '$sort': {
      'menu.parent': 1
    }
  }]
Run Code Online (Sandbox Code Playgroud)

目的是像这样递归地获取树:

{
    "_id": 1,
    "name": "Root",
    "parent: …
Run Code Online (Sandbox Code Playgroud)

mongoose mongodb mongodb-query aggregation-framework graphlookup

7
推荐指数
1
解决办法
2806
查看次数

将数据从socket.io中间件传递到事件的正确方法

我想将一些数据从 socket.io 传递middleware到已发出的event. 我从请求中提供的标头令牌中提取一些详细信息,并将提取的数据附加到对象中,socket如下所示:

/* extracting details from token, before connecting */
io.use((socket, next) => {
    const details = fetchDetails(socket.request.headers.token);
    // appending details to socket object
    socket.details = details;
    next();
});

/* on connection event */
io.on("connection", (socket) => {
    console.log('Client conected');
    // accessing details fetched in the middleware
    console.log(socket.details);
});
Run Code Online (Sandbox Code Playgroud)

一切正常,我唯一关心的是这个方法是否万无一失?是否保证附加在 中的数据middleware将始终可在 中访问event,或者是否会出现我附加的数据在事件中被覆盖/丢失的情况?

这是将数据传递middleware到发出的正确方法吗event

javascript node.js dom-events socket.io

6
推荐指数
1
解决办法
2618
查看次数

如果光标已位于元素上,则在页面加载时触发鼠标输入事件

我已将一个mouseenter事件与页面上的某些元素绑定在一起,我正在检查页面是否已加载,然后才允许 mouseenter 的实际功能运行。一切正常,但问题是,如果用户在页面加载之前已经将光标放在元素上,则用户将被迫首先移出 div,然后再次将光标移动到 div 内以触发事件,这使得这很尴尬。

有没有一种方法可以检查光标在页面加载时的位置,例如光标悬停在哪个元素上并相应地触发 mouseenter 事件?

我附上了一个片段,以便更好地理解我的问题。

提前致谢。

let pageLoaded;

/* assuming page load takes 3 seconds*/
window.onload = () => setTimeout(() => pageLoaded = true, 3000)

$(document).ready(() => {

  $('#box').mouseenter(() => {

    /* continue only if the page has been loaded */
    if (!pageLoaded)
      return;

    $('body').append('mouse entered after page load <br>')


  })
})
Run Code Online (Sandbox Code Playgroud)
#box {
  height: 150px;
  width: 150px;
  background-color: green;
  margin:10px;
  cursor:pointer;
  float: left;
}

 p {
  font-style: italic;
 }
Run Code Online (Sandbox Code Playgroud)
<script …
Run Code Online (Sandbox Code Playgroud)

html javascript css jquery

5
推荐指数
1
解决办法
2798
查看次数

隐藏的表格字段?

__CODE__
__CODE__
__CODE__

我想隐藏用户的表单文本框输入?文本框自动收集我网站登录用户的用户名,但我不想向他们展示..看起来很尴尬.怎么实现隐藏呢?有出路吗?

html

4
推荐指数
1
解决办法
2万
查看次数

firebase 托管 url 重写模式匹配

我如何重写网址,如:

http://somedomain.com/page.html

http://somedomain.com/DIRECTORY/page.html

在 Firebase 托管中。我试过这个,firebase.json但没有用。

  "rewrites": [ {
      "source": "/**.html",
      "destination": "/DIRECTORY/**.html"
    } ]
Run Code Online (Sandbox Code Playgroud)

模式匹配如何在 Firebase 托管配置中工作。帮助将不胜感激。

firebase firebase-hosting

4
推荐指数
1
解决办法
2342
查看次数

从 S3 复制文件时出现 AWS CodeBuild 错误 - COMMAND_EXECUTION_ERROR:原因:退出状态 1 (NodeJS)

我在尝试将文件从S3存储桶复制到构建工件时遇到此错误,构建后。

我的构建阶段错误日志显示: COMMAND_EXECUTION_ERROR:执行命令时出错: aws s3 cp "s3://bucket/config.json" "config.json". Reason: exit status 1

这是我的 BuildSpec:

version: 0.2

phases:
  install:
    commands:
    - npm install
  build:
    commands:
      - npm run build
  post_build:
    commands:
      - aws s3 cp "s3://bucket/config.json" "config.json"
Run Code Online (Sandbox Code Playgroud)

amazon-s3 aws-cli amazon-elastic-beanstalk aws-codepipeline aws-codebuild

4
推荐指数
1
解决办法
551
查看次数

this.$forceUpdate 等效于 Vue 3 - Composition API?

在 Vue 2 中,this.$forceUpdate()可以使用实例方法手动更新组件。我们如何在 Vue 3 - Composition API(内部设置方法)中强制更新组件?

setup(props, context) {
   const doSomething = () => {
     /* how to call $forceUpdate here? */
   }

   return {
       doSomething
   }
}
Run Code Online (Sandbox Code Playgroud)

提前致谢。

vue.js vue-component vuejs3 vue-composition-api

3
推荐指数
3
解决办法
2527
查看次数

如何将 S3 存储桶中的文件添加到 AWS CodePipeline 中的输出工件?(节点JS)

我正在使用 AWS CodePipeline,它从我的 git 存储库获取源代码,使用CodeBuildbuildSpec 构建输出工件并将其保存到 S3 存储桶,最终部署到Elastic BeanStalk(NodeJS 环境)。

一切正常,但我需要管道从我的AWS S3存储桶之一复制 1 个特定文件并将其添加到,output artifacts然后再将其部署到EB

可以使用 buildSpec 来完成吗?

artifacts:
  files:
    - '**/*'
    # - How to add a file from S3 to the artifacts?
Run Code Online (Sandbox Code Playgroud)

amazon-s3 amazon-web-services aws-codepipeline aws-codebuild buildspec

1
推荐指数
1
解决办法
1790
查看次数

HTTP REFERER足够安全吗?

我有一个PHP文件,其中包含我网站的一些重要数据.我在该文件中设置了以下编写的HTTP REFERER脚本.目前,只有从我的网站后端的特定页面(受密码保护)重定向时才能访问它.假设无法通过任何其他方式访问此文件是否安全?

<?php
    if ($_SERVER['HTTP_REFERER'] == "http://yoursite.com/IMPORTANT_FILE.php") {
        // continue
    } else {
        header("Location: http://yoursite.com/");
        exit(); //Stop running the script
        // go to form page again.
    }
?>
Run Code Online (Sandbox Code Playgroud)

php http

0
推荐指数
1
解决办法
264
查看次数