Tôi đang cố gắng lấy vài giá trị từ redis, kết hợp chúng và cuối cùng gửi. Nhưng tôi không thể thực hiện những lời hứa đó.nodejs redis Q hứa hẹn, làm thế nào để nó hoạt động?
Đây là get
chức năng đơn giản từ redis
client.get('user:1:id',function(err,data){
// here I have data which contains user ID
});
client.get('user:1:username',function(err,data){
// here I have data which contains username
});
Bây giờ tôi muốn nhận được ID
và username
và gửi cho họ, nhưng tôi không có ý tưởng làm thế nào để làm cho công việc đó. Tôi quản lý để làm cho nó làm việc với callbacks nhưng nó là kết quả rất lộn xộn, vì vậy sau đó tôi đã cố gắng để quấn chức năng ẩn danh vào Q.fcall
và sau khi cuộc gọi .then
mà trông giống như thế
client.get('user:1:id',Q.fcall(function(err,data){
return data;
}).then(function(val) {
// do something
}));
nhưng điều đó mang lại cho tôi lỗi quá nhiều đối số đã được thông qua và tôi thậm chí không chắc chắn nếu điều đó sẽ giúp tôi ngay cả khi nó sẽ làm việc.
đó có vẻ là một cách tiếp cận tốt đẹp, và hoạt động tốt, mặc dù tôi vẫn còn đang thiếu phần làm thế nào tôi có thể kết hợp id và tên người dùng trong một đối tượng cho gửi đến trình duyệt mà không làm mọi thứ quá lộn xộn. Bạn có thể chia sẻ một số kiến thức ở đây xin vui lòng. – Giedrius
Làm thế nào về điều đó? –
Cảm ơn bạn rất nhiều, bây giờ những lời hứa này bắt đầu có ý nghĩa hơn một chút đối với tôi. – Giedrius