Действительно ли возможно использовать энергию с мышью

Прежде всего, array.map НЕ предназначен для зацикливания. Это работа array.forEach. array.map используется для создания массива из другого массива, дополнительно преобразовывая каждое значение.


this.content.map(data => this.sections = data.sections);

Для этого назначается последний элемент в this.content - this.sections. Вам не нужно array.map, чтобы сделать это. Вы можете просто взять последний элемент через его индекс.

this.sections = this.content[this.content.length - 1]

Вы не можете избежать нескольких циклов, если ваши данные вложены. Но что вы можете сделать для улучшения читабельности, так это превратить вложенный цикл в плоский цикл. В вашем коде то, что вы ищете, это response. Итак, сначала сгладим this.sections, затем , а затем пройдем через него.

this.sections
  .map(rjfBlock => rjfBlock.rjf)
  .reduce((c, rjf) => [...c, ...rjf], [])
  .forEach(response => {
    const type = this.contentMappings[response.type]
    this.service.createComponent(response, type)
  })

Давайте разберемся с этим:

  • .map собирает все массивы rjf в массив. На данный момент у нас есть массив массивов.
  • .reduce выравнивает массив путем объединения каждого массива в один массив. На данный момент у нас есть одноуровневый массив ответов.
  • .forEach - перебирает каждый ответ.
5
задан flybywire 20 April 2009 в 10:59
поделиться

3 ответа

С помощью GVim вы можете выделять текст и перемещать курсор, а также выбирать пункты меню с помощью мыши. Скопируйте и вставьте, щелкнув правой кнопкой мыши и т.д ... Но я думаю, что это упускает смысл использования VIM.

6
ответ дан 18 December 2019 в 08:31
поделиться

Вы можете включить мышь с помощью : set mouse = a (Буква «а» означает включить его во всех режимах)

9
ответ дан 18 December 2019 в 08:31
поделиться

Вы можете сопоставить определенные действия с щелчком левой и правой кнопки мыши. И есть много уже запланированных действий для работы с ctags и другими вещами.

:help mouse-using
4
ответ дан 18 December 2019 в 08:31
поделиться