Генерация АНГЛИЧАНИНА Знатока из существующего проекта?

В этом случае вам нужно асинхронное ожидание, и хорошо использовать Promise.all, потому что вы делаете выборку в forEach.

Для forEach вам нужно дождаться Promise.all, а для получения нужно дождаться. Это означает, что он будет ждать, пока forEach будет завершен

Изменить

    fetch('https://api.themoviedb.org/3/movie/popular?api_key=APIKEY&page=1')
    .then(response => response.json())
    .then(data => {
        const movies = data.results;

        movies.forEach(movie => this.moviePageAndGenres(movie.id, movie));

        this.setState({
            movies
        });
    })

на

  fetch('https://api.themoviedb.org/3/movie/popular?api_key=APIKEY&page=1')
    .then(response => response.json())
    .then(async data => {
        const movies = data.results;
        await Promise.all(movies.forEach(async movie => await this.moviePageAndGenres(movie.id, movie)))

        this.setState({
            movies
        });
    })

Также

Изменить

  moviePageAndGenres = (id, element) => {
      fetch('https://api.themoviedb.org/3/movie/' + id + '?api_key=APIKEY')
    .then(response => response.json())
    .then(data => {
        element.genres = data.genres;
        element.homepage = data.homepage;
    });
 }

К

   moviePageAndGenres = async (id, element) => {
      return await fetch('https://api.themoviedb.org/3/movie/' + id + '?api_key=APIKEY')
    .then(response => response.json())
    .then(data => {
        element.genres = data.genres;
        element.homepage = data.homepage;
    });
 }
18
задан Community 23 May 2017 в 12:23
поделиться

4 ответа

Можно сделать это в IntelliJ, но АНГЛИЧАНИН, которого он генерирует, может быть более сложным, чем если бы Вы пишете вручную. Если Ваш проект в настоящее время находится в JBuilder или Eclipse, можно импортировать это сначала.

Вместо этого я предложил бы, чтобы Вы описали свой проект в АНГЛИЧАНИНЕ и использовали его для генерации информации проекта. Можно сделать это для затмения и идеи (и я принимаю другие IDE)

9
ответ дан 30 November 2019 в 08:43
поделиться

Один способ сделать это это для создания шаблонного проекта через архетип знатока тогда перемещает существующий код в шаблон. Я рекомендовал бы это только для действительно простых проектов. Это работало бы что-то вроде этого.

mvn archetype:generate 
mv src/* src/main/java
mv test/* src/test/java
mvn package

Вы получите ошибки. Для добавления недостающих зависимостей пойдите сюда: http://www.mvnrepository.com/ и начинают искать их. При выборе архетипа близко к тому, в чем Вы нуждаетесь, Вы будете половиной пути там.

, Как только все это работает.

svn commit -m "hacky maven port"
14
ответ дан 30 November 2019 в 08:43
поделиться

Ваш существующий проект, вероятно, не использует Знатока, так создание АНГЛИЧАНИНА на основе его не тривиально.

самый простой способ, которым я могу думать, состоит в том, чтобы получить плагин Знатока для Eclipse, генерировать новый проект знатока и затем добавить Ваш код.

необходимо будет также управлять внешними банками с помощью метода Знатока. В этом случае они, вероятно, были бы системными банками.

0
ответ дан 30 November 2019 в 08:43
поделиться

В eclipse Galileo, если у Вас есть плагин maven2, Вы можете выбрать проект, а затем щелкнуть правой кнопкой мыши и спуститься в Maven2 в контекстном меню, и там должна быть возможность конвертировать проект в проект maven.

0
ответ дан 30 November 2019 в 08:43
поделиться