SO - 30837086
by Arun P Johny
JavaScript
'use strict';
let movieData = [{
id: '1011',
name: 'Gleaming the cube',
year: "1989"
}, {
id: "1012",
name: "Airborne",
year: "1989"
}]
let MovieApi = {
findMovie: function (id) {
return new Promise(function (resolve, reject) {
if (id === undefined) reject(Error('incorrect movie id'));
let movie = ''
for (let m of movieData) {
if (m.id.toLowerCase() === id.toLowerCase()) {
movie = m
break
}
}
resolve(movie)
});
},
findAllMovies: function () {
return new Promise(function (resolve, reject) {
if (movieData === undefined) reject(Error('Could not find any movies'))
resolve(movieData)
});
}
}
//just to test
var req = {
params: {
id: '1011'
}
}
MovieApi.findAllMovies().then(function (movies) {
return MovieApi.findMovie(req.params.id)
}).then(function (movie) {
console.log('found', movie)
//movies is local to the first callback so won't be available here
let MovieStore = {
movie: movie,
movies: movies
}
}).
catch (function (error) {
console.error("Failed!", error);
});