Aktywne Wpisy

ProstyHuop +11
#321685 ogułem to smutno mi huopy niby żyje a straciłem życie za życia nie widzę dalszej perspektywy na lepsze jutro a do tego ten czas zapierdox strasznie pewno mrugne i będę miał 50+ lat o ile wcześniej nie umrę przez alkoholizm/zawał/udar/raka a nic nie przeżyłem, nic nie doświadczyłem, zawsze sam i umrę sam bez żadnego celu w życiu, jak jakiś npc ołwa

mikszu +9
#krakow #referendum tak sobie myślę, i ta kampania aby olać referendum to w sumie idiotyzm, bo jak potrzeba tam ~27% frekwencji, to Ci co są za Tobą nie pójdą na referendum, przez co opozycja ma większą szansę na odwołanie, ponieważ Ci co pójdą zagłosować, oddadzą głoś za odwołaniem, dzięki czemu nawet mniejszość może odwołać prezydenta xD





Mam pytanko - jak radzicie sobie z niekonsekwencją w zewnętrzych bibliotekach Node.js odnośnie operacji asynchronicznych? Bo niektóre biblioteki korzystają z Q, inne zwracają ES6 promise lub kompatybilne, a jeszcze inne korzystają z callbacka function( error , result ). Ja bym potrzebował aby wszystko było na jedno kopyto bo używam async/await z babelem i zastanawiam się jak to zrobić, bo nie chciałbym pisać wrappera do każdej możliwej klasy i funkcji a np. mongoose operuje na zasadzie callbacka function(error,result).
Ktoś, coś?:)
BTW - http://mongoosejs.com/docs/promises.html
Promise'y są chyba między sobą kompatybilne?
nie wiem czy on oczekuje konkretnego ES6 promise czy czegokolwiek co spełnia standardy, tj. ma metody .then() , .catch() itp. Z tego co patrzę na dokumentację bluebirda to jest tam napisane
promisify/promisifyAllW poniższym linku znajdziewsz wszystko co potrzebne o async await i dlaczego wcześniej potrzebowalismy generatorów. Jest to jedno z wielu fajnych zastosowań
@regis3: Hmm obecnie nie ma "prawdziwych" async/await bo nie ma silnika JS implementującego async/await, póki co to tylko specyfikacja,
@larvaexotech: Chakra wspiera.
var myIterable = {}
myIterable[Symbol.iterator] = function* () {
yield 1;
a) W implementacji modelu dodajesz:
var mongoose = require('bluebird').promisifyAll(require('mongoose'));Nie jestem pewny czy to zadziała, bo nie probowałem,
Dzięki cumplu :)
`var mongoose = require('bluebird').promisifyAll(require('mongoose'));
w ES6
a próbowałeś var usunąć z tego wyrażenia? bo zmienna mognoose jest już w 'scope' z powodu importu więc powinna działać jak każda inna zmienna.
w zasadzie import (.....) jest niemal równoważne z require, różnica jest tak naprawdę taka że wszyskie linie "import" są wykonywane najpierw a później jest wykonywany kod i o tym trzeba pamiętać.
tzn. ES5:
var
import fsBase from 'fs';
import blueBird from 'bluebird';
const fs = blueBird.promisifyAll( fsBase );
console.log( fs.readFileAsync ); // output: [Function]
import bluebird from 'bluebird';
import mongoose from 'mongoose';
mongoose = bluebird.promisifyAll(mongoose);