سلام وقت بخیر.
من مشکل promise رو این شکلی حل کردم که یه متغیر بالاتر از promise با یه مقدار اولیه تعریف کردم و بعد داخل then مقدارش رو عوض کردم.
این روش میتونه مشکل ساز بشه یا این هم روش درستیه؟
count(): number {
let count = 0;
redisConnection.get( this.redisKey )
.then( result => {
const items = JSON.parse( result as string );
count = items.length;
} )
.catch( ( error ) => {
// tslint:disable-next-line:no-console
console.log( `redis.get failed in method count: ${ error.message }` );
} );
return count;
}
has( product: IProduct ): boolean {
let hasProduct = false;
redisConnection.get( this.redisKey )
.then( ( result ) => {
const items = JSON.parse( result as string );
hasProduct = items.includes( product );
} )
.catch( ( error ) => {
// tslint:disable-next-line:no-console
console.log( `redis.get failed in method has: ${ error.message }` );
} );
return hasProduct;
}