@react_js

Страница 96 из 5115
Nikita
11.05.2016
13:56:19
есть вебпак, которым мы собираем приложения

я хочу на его уровне найти инструмент, который позволит это переопределить

если его нет - ок, напишу. В этом и был весь вопрос

бабел кривой - ок. предлагаю вам свой babel написать, который будет прямой)

Google
Artur
11.05.2016
13:57:25
Типа такой штуки const resolverMap = { "components": { "buttons": { "BlueButton": "custom/path/to/BlueButton" } } } И соответствующие правила.

Nikita
11.05.2016
13:57:43
ты не ту проблему решаешь

ты мне говоришь как интерфейс дать

это я и так знаю

мне нужно понять как это сделать в кишках

а снаружи вообще на важно, будет там строка, или название компонента, или его id - вообще плевать

Artur
11.05.2016
13:58:31
бабел кривой - ок. предлагаю вам свой babel написать, который будет прямой)
Так тут как раз вопрос в том, что я (например) не стремлюсь переписывать babel или другую неудобную либу. Речь о том, что есть какие-то стандартные практики, типа наследования, API да паттерны всякие, которые позволяют свои задачи решать и вроде как принято это все в разработке применять.

Nikita
11.05.2016
13:59:03
я тебе показал реальный пример с babel. У него есть полифил для промиса, и дока как переопределять

Artur
11.05.2016
13:59:06
это я и так знаю
А, ну т.е. вопрос просто в том, есть ли стандартный способ это сделать в webpack.

Nikita
11.05.2016
13:59:16
мне кажется этот способ переопределения для фронтенда странным

потому что мы как минимум 2 реализации промисов тянем

Anton
11.05.2016
14:00:18
Не мешайте человеку хотеть странного ) Если для него причины по которым так не делают не принципиальны - пусть делает )

Artur
11.05.2016
14:00:27
потому что мы как минимум 2 реализации промисов тянем
Ну, вроде как bluebird сильно скоростнее чем все остальное.

Google
Nikita
11.05.2016
14:00:52
просто фейспалм

я пишу одно - вы читаете другое))

если переопределять, как предлагает babel в бандле окажется 2, ДВЕ реализации промисов, а в рантайме одна, блюберд - да

Антон, тебе норм в бандл тащить код, который ты не используешь?)

Artur
11.05.2016
14:02:00
Давайте оставим бабель

Nikita
11.05.2016
14:02:18
да не, отличный пример

у меня как раз тоже самое

Artur
11.05.2016
14:02:27
Ну я изначально спрашивал, это принципиально вычистить неиспользуемый код или нет.

Nikita
11.05.2016
14:02:45
у бабеля полифил, вот у этого полифила я хочу переопределить кусок

Anton
11.05.2016
14:02:58
require('babel-runtime/core/promise').default = require('bluebird') - как раз вот это насколько я помню можно решить алиасами

Vladimir
11.05.2016
14:03:23
просто не полифиль runtime-ом

Nikita
11.05.2016
14:03:32
ну вот у меня не получилось это решить алиасами)

Vladimir
11.05.2016
14:03:32
используй bluebird напрямую

Anton
11.05.2016
14:03:43
покажи как решал

Nikita
11.05.2016
14:04:12
alias: {'babel-runtime/core/promise': 'bluebird'}

просто не полифиль runtime-ом
интересный подход) Не нравится маленький кусочек инструмента - выкидываем его нафиг, берем маленький кусочек, а остальные 90% инструмента дописываем сами, или как?

Vladimir
11.05.2016
14:05:44
что из рантайма кроме промисов тебе ещё нужно?

Nikita
11.05.2016
14:05:59
String.prototype.includes

Aleksey
11.05.2016
14:06:49
Вы прям здесь бем описываете, ребята :D

С его бандлами и уровнями переопределения.

Google
Nikita
11.05.2016
14:07:27
ребята решают абстрактную задачу и не отвечают на конкретный вопрос)

Vladimir
11.05.2016
14:07:50
babel-ю до фулл-стека бэма по сложности ещё очень далеко

Aleksey
11.05.2016
14:09:40
Я и не сравнивал бабел с бемом, я говорю что идея то там уже изложена, просто инструмент этот скорей всего не подойдет. Хотя знаю человека который их сборщиком себе реакт собирает.

Vladimir
11.05.2016
14:10:34
внутри яндекса некоторые команды тоже бэмом собирают реакт

@gusnkt я не знаю про includes =(

Nikita
11.05.2016
14:11:12
ты это к чему?)

Vladimir
11.05.2016
14:11:49
> String.prototype.includes

Anton
11.05.2016
14:12:00
Слушай, а ты случаем не делаешь что-то в духе конструктор лендингов? Типа тебе нужно продавать многим заказчикам одну и ту же примерно логику, и что бы максимизировать прибыль ты хочешь автоматизировать процесс переопределнием компонентов в сборщике?

Vladimir
11.05.2016
14:12:20
я бы полифилил только то, что использую

а не всё разом

Nikita
11.05.2016
14:12:32
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/includes

Vladimir
11.05.2016
14:12:37
чтобы бандл не разрастался

Vladimir
11.05.2016
14:12:42
я знаю что это

Vladimir
11.05.2016
14:13:15
@gusnkt так это es2017

Anton
11.05.2016
14:13:25
И ты хочешь, что бы либа была встриваемой, но при этом гибко и легко кастомизируемой

Nikita
11.05.2016
14:13:35
да

Anton
11.05.2016
14:13:36
Теперь я понял, что и зачем ты хочешь сделать

Nikita
11.05.2016
14:13:36
ура

Anton
11.05.2016
14:14:04
Стандартными средствами сборщика ты это врядли сделаешь

Google
Vladimir
11.05.2016
14:14:06
скорее всего эту штуку можно просто пресетом es2017 сделать

Nikita
11.05.2016
14:14:29
в core-js это есть

я вообще метод из головы взял))

Anton
11.05.2016
14:14:44
alias: {'babel-runtime/core/promise': 'bluebird'}
Это скорее всего проблема бабеля. Думаю алиасы резолвятся до того как он вставит свои импорты. Для твоей либы это будет работать

Nikita
11.05.2016
14:14:53
String.prototype.trim - лучше пример?)

Vladimir
11.05.2016
14:15:44
а зачем trim полифилить?

Nikita
11.05.2016
14:15:48
Admin
ERROR: S client not available

Vladimir
11.05.2016
14:15:55
у него 100% support

Anton
11.05.2016
14:15:59
ну я сейчас попробовал - все работает

не понимаю о чем тогда сыр бор )

Nikita
11.05.2016
14:16:54
гм, а как ты попробовал?

у него 100% support
ты вот опять не те вопросы спрашиваешь) Я взял babel исключительно ради примера. У него есть как раз подобное моему API и подобная проблема - что-то хочется переопределить

Anton
11.05.2016
14:19:19
я проверил что алиас типа a/b работает норм. Следовательно, в либе: require('buttons/coolbutton') ... alias :{ 'buttons/coolbutton': './src/ugly-lib-button.js', } в аппе: alias :{ 'buttons/coolbutton': './src/my-super-cool-button.js', } соберется с твоей подсунутой кнопкой

Nikita
11.05.2016
14:20:01
не, мне так не нравится. Возможны конфликты

допустим внутри проекта test есть require('./src/foo'), а я хочу переопределить test/src/foo

иначе такие алиасы могут поломать чужой код

Anton
11.05.2016
14:23:54
не вижу что где должно поломаться

Denis
11.05.2016
14:25:07
Electron 1.0: больше миллиона загрузок, демо-приложение, расширение для отладки, тесты — http://electron.atom.io/blog/2016/05/11/electron-1-0

Sergey
11.05.2016
14:27:11
новый электрон огонь, да

Google
Sergey
11.05.2016
14:27:27
завезли встроеные API уведомлений

Anton
11.05.2016
14:28:05
не, мне так не нравится. Возможны конфликты
Ну, кактус твой - твое право жевать его любым приятным для тебя способом )

Denis
11.05.2016
14:30:28
А если глаза устают читать, то ребята из Frontflip выпустили очередной бомбовый подкаст http://frontflip.me/2016/05/05/vk-redesign.html

Nikita
11.05.2016
14:31:27
а мне скучно показалось:(

Andrey
11.05.2016
14:33:05
и в дополнение выступление фронтедщика из вк https://www.youtube.com/watch?v=qseu-ZaGoes&feature=youtu.be&t=812

anoru
11.05.2016
15:12:45
https://youtu.be/qseu-ZaGoes?t=780

причина почему вк отваливается)

доклад совсем не впечатлил. Сначала сказал, что не юзают сс методологию и как раз столкнулись с тем, что будут постепенно внедрять (вероятно бэм). Учитывая, что они делали с нуля новый дизайн, то не понимаю почему бы не заюзать современный стек. Старый gulp с less, отсутствие тестов. Любой может задеплоить одной кнопки. Рассказывают, что может сломаться сообщения у 100 млн и страхом держат разработчиков. По этой причине, видимо, у меня всегда отваливаются сообщений) Про iframe вот интересно было немного, но надо больше подробностей нагуглить

css методологию*

в целом видос словно из 2013 года пришел

Nikita
11.05.2016
15:34:26
подкаст еще хуже

ппц тухло

Denis
11.05.2016
15:39:24
ВК всё?)

Nikita
11.05.2016
15:40:16
чувак в докладе какую-то хрень выдает за дикий рокетсайнс))

вообще как они могли додуматься прямо по запросу клиента генерить css. CI - не, не слышали

Andrey
11.05.2016
15:49:46
там много тупняков и видео + подкаст помоему отличная антиреклама как работадателя да и вообще, сервиса )

Denis
11.05.2016
15:50:44
По запросу клиента генерить critical CSS?

Artur
11.05.2016
16:46:03
А чего бы его не генерить сразу при сборке билда?

Dmitrii
11.05.2016
16:46:54
а что делать если количество бандлов будет 10**10? :)

Страница 96 из 5115