小编Jos*_*abo的帖子

使用NEWER flexbox api在全高应用程序中进行Flexbox和垂直滚动

我想使用flexbox使用全高应用程序.我在这个链接中使用旧的flexbox(显示:框;以及其他东西)找到​​了我想要的东西:CSS3 Flexbox全高应用和溢出

对于旧版本的flexbox css属性,这是一个正确的解决方案.

如果我想尝试使用较新的flexbox属性,我将尝试在同一链接中使用第二个解决方案,但使用高度为0px的容器 "黑客"弹性框; 它使显示垂直滚动.

我不喜欢它,因为它引入了其他问题,它更像是一个解决方案不是解决方案.

我准备了一个基本示例的jsfiddle:http://jsfiddle.net/ch7n6/

html, body {
    height: 100%;    
}
#container {
	display: flex;
	flex-direction: column;
	height: 100%;
}
#container article {
	flex: 1 1 auto;
	overflow-y: scroll;
}
#container header {
    background-color: gray;
}
#container footer {
    background-color: gray;
}
Run Code Online (Sandbox Code Playgroud)

它是一个"全高html网页",由于内容元素的flexbox,页脚位于底部.我建议你在css代码和结果之间移动吧来模拟不同的高度.

html css flexbox

76
推荐指数
3
解决办法
11万
查看次数

使用nodejs在mongoDB oplog集合中查找每个新文档不起作用(游标似乎变得无效或死亡)

我想要实现的想法是在创建新文档时读取(查找)mongoDB oplog集合(例如插入到数据库集合中).

这是我的代码简化:

var MongoClient = require('mongodb').MongoClient;

MongoClient.connect(url, function(err, db) {
if(err){console.error("ERROR",err); return;}

console.log("Connected correctly to server");

db.collection('oplog.rs').find({
        ns: 'cabo_dev.documents',
        op: 'i',
        // ts: {
        //  $gte: $gte
        // }
    }, {
        tailable: true
    })
    .each(function (err, entry) {
        if (err) {
            console.error("Error fetching a document", err, entry);
            return;
        }

        console.log('--- entry', entry);
    });
});
Run Code Online (Sandbox Code Playgroud)

我已经评论了$ gte值来简化,但这个想法是读取所有"新"日志,而不是旧日志.我也有类似的代码使用mongoose,而不是原始驱动程序.

根据文档,前面的代码将返回表示插入cabo_dev.documents集合中的所有oplog文档(cabo_dev是db的名称)以及所有新的后续插入.但是,当它完成返回文档('旧'文档)然后没有更多文档要返回时,它会返回下一个输出为错误(错误的每个中的var):

{ [MongoError: No more documents in tailed cursor]
  name: 'MongoError',
  message: 'No more documents in tailed …
Run Code Online (Sandbox Code Playgroud)

mongodb node.js

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

如何在 MacOS Apple Silicon M1 arm64 主机上的 Docker 容器上运行 Puppeteer

我无法在 Docker 容器内的 Puppeteer 上运行单元测试。我的主机是带有Apple Silicon M1(arm64)芯片的MacOS。我还尝试遵循Puppeteer Github 文档中的说明,但它们适用于 amd64。有什么建议吗?

node.js docker jestjs puppeteer

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

如何用node正确创建HTTPS透明代理服务器?

我正在使用 npm 包http-proxy,它声称可以帮助解决这个问题,但是我完全无法使其工作。到目前为止,我仅通过创建透明 HTTP 代理服务器取得了成功,但是当它创建透明 HTTPS 代理服务器时,什么也没有发生。

我正在使用一个 Android 设备,配置为使用代理以及预期配置代理的端口,但在 Nodejs 端没有触发任何内容。仅当我配置了 HTTP 代理服务器时,一切似乎才正常。

这是我的 HTTPS 代码:

var https = require('https');
var fs = require('fs');
var httpProxy = require('http-proxy');

var options = {
    key: fs.readFileSync('./client-key.pem', 'utf8'),
    cert: fs.readFileSync('./client-cert.pem', 'utf8')
};

var proxy = httpProxy.createProxyServer({
    ssl: options
});

https.createServer(options, function (req, res) {
    console.log("new", req.url);
    proxy.web(req, res, {
        target: req.url
    });
}).listen(8000);
Run Code Online (Sandbox Code Playgroud)

如果我使用http包中的createServer,那么它适用于http调用(因为正在触发回调),但它不适用于带有这些指令的https。有人知道我做错了什么吗?

PS:我不在乎是否必须使用不同的 npm 包。

https proxy node.js

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

标签 统计

node.js ×3

css ×1

docker ×1

flexbox ×1

html ×1

https ×1

jestjs ×1

mongodb ×1

proxy ×1

puppeteer ×1