Pytania otagowane jako promise

Obietnice to taktyka obliczeń odroczonych, odpowiednia dla kilku stylów współbieżności: współbieżność wątków i pętli zdarzeń do obliczeń lokalnych oraz synchroniczna i asynchroniczna zdalna obsługa wiadomości. Obietnica reprezentuje ostateczny wynik operacji asynchronicznej. Podstawowym sposobem pracy z obietnicami jest metoda, która rejestruje transformacje od ostatecznej wartości obietnicy lub przyczyny niepowodzenia obietnicy do nowej obietnicy.

2
Umiejscowienie połowu PRZED i PO następnie
Mam problem ze zrozumieniem różnicy między wstawieniem .catchPRZED i PO następnie w zagnieżdżonej obietnicy. Alternatywa 1: test1Async(10).then((res) => { return test2Async(22) .then((res) => { return test3Async(100); }).catch((err) => { throw "ERROR AFTER THEN"; }); }).then((res) => { console.log(res); }).catch((err) => { console.log(err); }); Alternatywa 2: test1Async(10).then((res) => { return test2Async(22) …

5
Jaka jest różnica między obietnicami JavaScript a oczekiwaniem asynchronicznym?
Używałem już funkcji ECMAScript 6 i ECMAScript 7 (dzięki Babel) w moich aplikacjach - zarówno mobilnych, jak i internetowych. Pierwszym krokiem było oczywiście przejście na poziomy ECMAScript 6. Nauczyłem się wielu wzorców asynchronicznych, obietnic (które są naprawdę obiecujące), generatorów (nie wiem, dlaczego symbol *) itd. Z tego obietnice całkiem dobrze …


2
TypeError: Nie można odczytać właściwości „then” wartości undefined
loginService.islogged() Powyższa funkcja zwraca ciąg znaków typu „failed”. Jednak gdy spróbuję uruchomić na nim funkcję, zwróci błąd TypeError: Cannot read property 'then' of undefined a kursor wskazuje tuż po connectedi przed .then. Poniżej znajduje się pełna funkcja: var connected=loginService.islogged(); alert(connected); connected.then(function(msg){ alert("connected value is "+connected); alert("msg.data value is "+msg.data); if(!msg.data.account_session …

2
Promise.resolve a nowa obietnica (rozwiązanie)
Używam bluebird i widzę dwa sposoby przekształcania funkcji synchronicznych w obietnicę, ale nie widzę różnic między nimi. Wygląda na to, że ślad stosu jest nieco inny, więc nie są one tylko znakami alias, prawda? Więc jaki jest preferowany sposób? Sposób A function someFunction(someObject) { return new Promise(function(resolve) { someObject.resolved = …

3
Jak złożyć obietnicę z setTimeout
To nie jest prawdziwy problem, po prostu próbuję zrozumieć, jak powstają obietnice. Muszę zrozumieć, jak złożyć obietnicę dotyczącą funkcji, która nic nie zwraca, na przykład setTimeout. Załóżmy, że mam: function async(callback){ setTimeout(function(){ callback(); }, 5000); } async(function(){ console.log('async called back'); }); Jak utworzyć obietnicę, która asyncmoże zostać zwrócona, gdy setTimeoutbędzie …

3
Promise.all (). Potem () rozwiązać?
Korzystanie z Node 4.x. Kiedy masz Promise.all(promises).then()właściwy sposób rozwiązania danych i przekazania ich następnemu .then()? Chcę zrobić coś takiego: Promise.all(promises).then(function(data){ // Do something with the data here }).then(function(data){ // Do more stuff here }); Ale nie jestem pewien, jak uzyskać dane do drugiego .then(). Nie mogę użyć resolve(...)w pierwszym .then(). …

8
Zastępowanie wywołań zwrotnych obietnicami w Node.js.
Mam prosty moduł węzła, który łączy się z bazą danych i ma kilka funkcji do odbierania danych, na przykład ta funkcja: dbConnection.js: import mysql from 'mysql'; const connection = mysql.createConnection({ host: 'localhost', user: 'user', password: 'password', database: 'db' }); export default { getUsers(callback) { connection.connect(() => { connection.query('SELECT * FROM …

1
Czy obietnica nigdy nie rozwiązana powoduje wyciek pamięci?
Mam Promise. Utworzyłem go, aby w razie potrzeby anulować żądanie AJAX. Ale ponieważ nie muszę anulować tego AJAX, nigdy go nie rozwiązałem i AJAX zakończył się pomyślnie. Uproszczony fragment: var defer = $q.defer(); $http({url: 'example.com/some/api', timeout: defer.promise}).success(function(data) { // do something }); // Never defer.resolve() because I don't need to …

9
Obietnica - czy można wymusić anulowanie obietnicy
Używam ES6 Promises do zarządzania wszystkimi moimi danymi w sieci i są sytuacje, w których muszę wymusić ich anulowanie. Zasadniczo scenariusz jest taki, że mam wyszukiwanie z wyprzedzeniem w interfejsie użytkownika, w którym żądanie jest delegowane do zaplecza, musi przeprowadzić wyszukiwanie na podstawie częściowych danych wejściowych. Chociaż to żądanie sieciowe …

6
Ponowne wyrzucenie błędu w złowieniu obietnicy
W samouczku znalazłem następujący kod: promise.then(function(result){ //some code }).catch(function(error) { throw(error); }); Jestem trochę zdezorientowany: czy połączenie telefoniczne coś daje? Wydaje mi się, że nie ma to żadnego efektu, ponieważ po prostu rzuca ten sam błąd, który został złapany. Opieram się na tym, jak działa zwykły try / catch.



9
Jak prawidłowo zwracać wiele wartości z obietnicy?
Ostatnio kilka razy spotkałem się z pewną sytuacją, której nie wiedziałem, jak poprawnie rozwiązać. Załóżmy następujący kod: somethingAsync() .then( afterSomething ) .then( afterSomethingElse ) function afterSomething( amazingData ) { return processAsync( amazingData ); } function afterSomethingElse( processedData ) { } Teraz może pojawić się sytuacja, w której chciałbym mieć dostęp …
86 javascript  promise  q 

3
Jak więc poradzić sobie z obietnicą if-else?
W niektórych przypadkach, gdy otrzymam wartość zwracaną z obiektu obietnicy, muszę rozpocząć dwie różne then()procedury zależne od stanu wartości, na przykład: promise().then(function(value){ if(//true) { // do something } else { // do something } }) Myślę, że może mógłbym to napisać tak: promise().then(function(value){ if(//true) { // call a new function …

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.