Я написал свое собственное обещание и хочу его связать, но результат всегда только первый в цепочке. Я думаю, что на моей стороне есть проблема понимания, как использовать их, но я не могу ее найти.Собственные обещания Promisekit не отвечают должным образом
Мой кода:
-(PMKPromise*)tryTheFirstPromiseWorkflow:(TestCycleObject *)testCycleObject{
PMKPromise *promise = [PMKPromise new:^(PMKPromiseFulfiller fulfill, PMKPromiseRejecter reject) {
fulfill(PMKManifold([_addModul addSomething:testCycleObject]));
}];
promise.then(^(TestCycleObject *testCycleObject){
testCycleObject = [_addModul addSomething:testCycleObject];
NSLog(@"Result: %i, Fulfilled: %d", testCycleObject.result, promise.fulfilled);
return testCycleObject;
}).then(^(TestCycleObject * testCycleObject){
testCycleObject = [_multiModul multiSomething:testCycleObject];
NSLog(@"Result: %i, Fulfilled: %d", testCycleObject.result, promise.fulfilled);
return testCycleObject;
}).then(^(PMKPromiseFulfiller fulfill, PMKPromiseRejecter reject){
fulfill(testCycleObject);
});
return promise;}
Сначала я создать обещание, то начинается цепь, но после создания обещания он будет доставлять только действие принятого в инициализации обещания, а не цепь, как результат.
Я попробовал свою цель, но все-таки столкнулись с проблемой:
-(void)test{
PMKPromise *test = (PMKPromise*)[self tryTheFirstPromiseWorkflow: [[TestCycleObject alloc] initWithDefaultValues]];
TestCycleObject *temp = (TestCycleObject*) test.value;
NSLog(@"Test: %i", temp.result);
}
Это, как я называю обещание, но результат этого всегда пусто. Обещание выполняется после моего журнала, но тогда я не могу получить результат. Итак, как я могу получить результат в моем методе. Я думал, что метод должен остановиться до тех пор, пока не будет выполнено обещание, я ошибаюсь?
I Редактировать оригинальное сообщение, потому что я не решаю проблему. Есть что-то еще, что я пропустил? –