All streams
Search
Write a publication
Pull to refresh
24
0
Andrew Ka @comerc

#кодеротбога

Send message
мы посадали ее на клей. Но после половины дня работы, из-за нагрева, клей расплавился и превратился в отличную смазку.
— Неудачно был выбран клей, получается. Его нормальный выбор можно сделать даже с помощью поисковика
(с привлечением спеца — сможе каждый).

В одной из лекций Маска услышал, что самая важная дисциплина — материаловедение.

Собственно, я больше хотел обратить внимание на Styled-JSX.

Написал ранее, см. выше.

Абсолютные пути в импорте

Работают относительно папки src, пример:


import MyComponent from 'components/MyComponent'

Конфигурация babel-plugin-module-resolver
['module-resolver', { 'root': ['src'] }]

Настройка WebStorm

Для папки src в контекстом меню выполнить: Mark Directory as > Resource Root.


Настройка Atom
  • Установить плагин js-hyperclick.
  • Для доменных компонентов прописывать в package.json путь до src:
    "moduleRoots": ["../.."]

Покажите код :)

У меня вызывают подобную реакцию ваши оценочные суждения.

Развешивание ярлыков. У меня есть ответы для Atom и WebStorm, например.

Вот тут я сомневаюсь. Компоненты стремятся почковаться до атомарного состояния. Чем меньше — тем лучше. Это оправдано, хотя стучать по клаве утомляет. Отсюда и типы уменьшаются. А вот переключать контекст внимания между файлов — только раздражает. Я вкрячил CSS в компоненты посредством styled-jsx — ужасно доволен, например.


Конечно, бывают исключения. Когда один тип используется в нескольких файлах, и недоступен иначе из-за циклического импорта компонентов.


https://github.com/comerc/yobr/blob/master/src/components/Post/Post.js

Какую версию TypeScript вы пробовали?

Мопед не мой. Это вопрос к автору доклада.

передача внутренних полей после проверки наличия объекта

Проверил, вот так работает без ругани:


type Person = {name: string, email: string};
type Bug = {id: string, assignee: ?Person};

var newBug: Bug = {id:'bug1', assignee: null};

if (newBug.assignee) {
  var assignee = newBug.assignee;
  console.log(assignee.name);
  console.log(assignee.email);
}

асинхронный вызов после проверки наличия переменной

Это тоже легко обойти исправлением типа. Наверно тут можно сделать скидку, что Flow сыроват?

Перекраивать create-react-app на кастомный конфиг только из-за...

Не только, аппетит приходит во время еды: styled-jsx, module-resolver, tcomb.


no-use-before-define включен тоже не просто так, чтобы вам мешать

Я сразу предупредил, что "хочется странного" — это послание специально для вас.

Не видишь суслика? А он там есть.

Хотя собирался давно, но решился переехать на Flow после этой замечательной публикации: Зачем использовать статические типы в JavaScript? (Преимущества и недостатки).

как прикрутить Styled-JSX и настроить абсолютные пути для импорта

Интересно почитать про велосипедостроение на тему SSR для CRA. :)

Не-не-не: custom-react-scripts — это форк, а react-app-rewired — врапер. Почувствуйте разницу.

Information

Rating
Does not participate
Registered
Activity