Size: a a a

JavaScript.Ninja

2020 February 06

IK

Illya Klymov in JavaScript.Ninja
Передавайте прям в строке запуска паттерн файлов для компиляции
источник

IK

Illya Klymov in JavaScript.Ninja
Причем в данном случае если его вообще убрать - то заработает
источник

TG

Timofey Goncharov in JavaScript.Ninja
Illya Klymov
Причем в данном случае если его вообще убрать - то заработает
паттерн файлов для компиляции это "example.tsx"?
источник

IK

Illya Klymov in JavaScript.Ninja
Угу
источник

TG

Timofey Goncharov in JavaScript.Ninja
а если его не будет, то что он тогда начнет транспилировать)
источник

TG

Timofey Goncharov in JavaScript.Ninja
ну вообще тогда я еще больше не понял ничего. "передавайте прям в строке запуска", а я разве так не делаю?
источник

IK

Illya Klymov in JavaScript.Ninja
Timofey Goncharov
ну вообще тогда я еще больше не понял ничего. "передавайте прям в строке запуска", а я разве так не делаю?
Уберите extensions
источник

TG

Timofey Goncharov in JavaScript.Ninja
источник

TG

Timofey Goncharov in JavaScript.Ninja
что за дичь 🤦‍♂️
источник

A

Averlor in JavaScript.Ninja
Доброго времени суток.

Цель:
Возникла необходимость написать класс для модалки. Модалка должна быть очень гибкой, а значит в конструктор нужно пихнуть больше 12 переменных.
Пришел к мысли, что можно переменные сгруппировать по объектам.

Вопрос:
как в конструкторе развернуть этот объект?

Как пытался сделать:

modalWrapper = {
  modal: {a:1},
  modalContent: {b:1},
  modalHeader: {c:1},
  modalBody: {d:1}
}

class Modal {
  constructor(modalWrapper) {
      { this.modal, this.modalContent, this.modalHeader, this.modalBody} = modalWrapper
  }
 
  render() {
      console.log(`${this.modal} - ${this.modalContent} - ${this.modalHeader} - ${this.modalBody}`)
  }
}


modal = new Modal(modalWrapper);
modal.render();
Выдает ошибку "Uncaught SyntaxError: Unexpected token '='"
источник

АЗ

Андрей Звёздочка in JavaScript.Ninja
Averlor
Доброго времени суток.

Цель:
Возникла необходимость написать класс для модалки. Модалка должна быть очень гибкой, а значит в конструктор нужно пихнуть больше 12 переменных.
Пришел к мысли, что можно переменные сгруппировать по объектам.

Вопрос:
как в конструкторе развернуть этот объект?

Как пытался сделать:

modalWrapper = {
  modal: {a:1},
  modalContent: {b:1},
  modalHeader: {c:1},
  modalBody: {d:1}
}

class Modal {
  constructor(modalWrapper) {
      { this.modal, this.modalContent, this.modalHeader, this.modalBody} = modalWrapper
  }
 
  render() {
      console.log(`${this.modal} - ${this.modalContent} - ${this.modalHeader} - ${this.modalBody}`)
  }
}


modal = new Modal(modalWrapper);
modal.render();
Выдает ошибку "Uncaught SyntaxError: Unexpected token '='"
{modal: this.modal} = modalWrapper
источник

A

Averlor in JavaScript.Ninja
а остальные поля соответственно, как

{modalContent: this.modalContent} = modalWrapper
?
И дальше в коде обращаться, как к modal или как к this.modal?
источник

A

Averlor in JavaScript.Ninja
Андрей Звёздочка
{modal: this.modal} = modalWrapper
источник

АЗ

Андрей Звёздочка in JavaScript.Ninja
Значит так нельзя. Разворачивай явно.
источник

JG

John Galt in JavaScript.Ninja
Averlor
Доброго времени суток.

Цель:
Возникла необходимость написать класс для модалки. Модалка должна быть очень гибкой, а значит в конструктор нужно пихнуть больше 12 переменных.
Пришел к мысли, что можно переменные сгруппировать по объектам.

Вопрос:
как в конструкторе развернуть этот объект?

Как пытался сделать:

modalWrapper = {
  modal: {a:1},
  modalContent: {b:1},
  modalHeader: {c:1},
  modalBody: {d:1}
}

class Modal {
  constructor(modalWrapper) {
      { this.modal, this.modalContent, this.modalHeader, this.modalBody} = modalWrapper
  }
 
  render() {
      console.log(`${this.modal} - ${this.modalContent} - ${this.modalHeader} - ${this.modalBody}`)
  }
}


modal = new Modal(modalWrapper);
modal.render();
Выдает ошибку "Uncaught SyntaxError: Unexpected token '='"
как только вижу что в конструктор пихается 12 переменных - на ум приходит паттерн Builder из ООП
можешь почитать - посмотреть что это такое
источник

A

Averlor in JavaScript.Ninja
John Galt
как только вижу что в конструктор пихается 12 переменных - на ум приходит паттерн Builder из ООП
можешь почитать - посмотреть что это такое
благодарю за направление
источник

JG

John Galt in JavaScript.Ninja
он поможет тебе грамотно описать логику конструирования модала, и билдером удобно пользоваться
будет чтото типо
new ModalBuilder(тут, обязательные, параметры)
.setHeader(тут, параметры, головы)
.setBody(тут, параметры, тела)
.build().show();
ну как то так примерно
источник

A

Averlor in JavaScript.Ninja
John Galt
он поможет тебе грамотно описать логику конструирования модала, и билдером удобно пользоваться
будет чтото типо
new ModalBuilder(тут, обязательные, параметры)
.setHeader(тут, параметры, головы)
.setBody(тут, параметры, тела)
.build().show();
ну как то так примерно
Понял. Сейчас попробую
источник

A

Averlor in JavaScript.Ninja
John Galt
он поможет тебе грамотно описать логику конструирования модала, и билдером удобно пользоваться
будет чтото типо
new ModalBuilder(тут, обязательные, параметры)
.setHeader(тут, параметры, головы)
.setBody(тут, параметры, тела)
.build().show();
ну как то так примерно
Благодарю за помощь!
источник

Д

Димка in JavaScript.Ninja
Здравствуйте, коллеги! Нужна фронтендерская помощь! Собственно, вопрос один из двух частей.
1) Зачем нужен стейт-менеджмент с помощью ngrx, ngxs и т.д.? Просмотрел несколько статей на этот счёт - всё никак не могу понять, зачем городить столько прослоек, если в ангуляре из коробки есть сервисы, которые можно под это дело приспособить?
2) Чисто практический вопрос. Есть фильтр с чекбоксами, есть массив объектов. Массив объектов можно фильтровать по возможным значениям поля в чекбоксах и выводить. Я приспособил сервисы для этого. Есть сервис filter-store и array-store. При изменении фильтра автоматически фильтруется массив (array-store подписан на изменения filters-store с помощью observable), что логично, но появилась проблема - если фильтры возвращают пустой массив, то не нужно применять последнее изменение. То есть, мне придётся до применения фильтра отфильтровать массив и, если всё нормально, установить состояние фильтра на новое, а потом будет проходить фильтрация повторно в array-store. Где у меня ошибка в логике? Как лучше? Куда выносить подобное? Могут ли в этом случае помочь менеджеры стейта? Как, зачем, почему?
Надеюсь, написал более-менее понятно. Заранее спасибо за ответы;)
источник