Денис
У элемента два класса, но этот мне не нужен
Pavel
Денис
Та не)))
Pavel
Та не)))
А чего то нет? Быстро понятно и на верочку :)
Vladislav
Vladislav
ты подключаешь скрипт после жиквери?
Leonid
да
Leonid
после
Demetrio
async/defer нигде не стоит?
Pavel
\.
Kirill
Для замены конкретного текста лучше заменять конкретный текст
Kirill
А не регулярки использовать
Pavel
Ворвался покритиковал ничего не предложил, давай до свидания 👋
Kirill
Я предложил же
.replace(".youtube", "")
Pavel
Ну вот сейчас вижу код :) а так, регулярка там явно лишняя
Kirill
Более универсальное решение, если решишь ещё классов вдруг добавить
Kirill
Будет лучше тогда
Дмитро
У меня такой нубский вопрос.
Если с помощью чистого JS можно в принципе все писать то зачем нужны React, Angular, jQuerry и т.д.?
Kirill
Для удобства
Kirill
jQuery облегчает работу с DOM, React и Angular вводят компоненты, которые по факту являются главным преимуществом всех js-фреймворков
Kirill
Компоненты реюзабельны и с ними удобно работать
Дмитро
Объясните для новичка что такое компоненты?)
Kirill
Берешь несколько DOM-объектов которые вместе представляют отдельную сущность
Kirill
Пихаешь их в контейнер (div)
Kirill
И получаешь компонент
Дмитро
Понял, спасибо за разъяснение
Kirill
В фреймворках компоненты представлены средствами ООП
Kirill
Поэтому они удобнее
Но если не юзать фреймворки, компоненты можно реализовать с помощью того же БЭМ
Дмитро
Просто сейчас учу js, смотрю на функционал и понимаю что в принципе на чистом js можно все что хочешь делать
Kirill
Чистый джаваскрипт не так эффективен как кажется
В энтерпрайсе его не используют обычно
Дмитро
Понял, спасибо за ответы)
Дмитро
Пока в чистом js разберусь а потом уже во фреймворки пойду)
Kirill
Хотя про БЭМ наверное немного бред
БЭМ нужен для удобной работы с CSS, это не то чтобы замена компонентам
Dubzer
Dmitry
Коллеги, вопрос:
var car = {
registrationNumber: "GA12345",
brand: "Toyota",
displayDetails: function(){
console.log(this.registrationNumber + " " + this.brand);
}
}
car.displayDetails(); // GA12345 Toyota
var myCarDetails = car.displayDetails;
myCarDetails();
Почему car.displayDetails() THIS указывает на registrationNumber, а myCarDetails() THIS уже указывает на глобальный объект?
Syntax Highlight Bot
Dmitry
Если админы разрешат, то запусчу ссылку откуда взял пример
Kirill
car.displayDetails.bind(car)
Kirill
Напиши так и все будет работать правильно
Мне лень объяснять почему, просто погугли про bind
Dmitry
про байнд я вкурсе, я не понимаю, почему так впринципе происходит
Kirill
Очевидно потому что джаваскрипт не биндит функции сам
Demetrio
https://habr.com/ru/post/149516/
Dmitry
Kirill
Выше скинули инфу по этому поводу
Dmitry
Dmitry
Demetrio
он не там меняется, а в момент вызова
Kirill
При чем bind привязывает не только this, но и аргументы которые можно было бы передать функции
let f = (arg => console.log(arg)).bind(null, 1);
f() // 1
Но первым аргументом всегда передается this
Syntax Highlight Bot
Ivan
В джс - это одновременно и киллер фича и то из-за чего не любят этот ЯП. Порой удобнее смотреть на текущий контекст нежели на содержимое объекта, во фронте довольно часто надо
Игорь
Привет, как решить эту проблему? Весь инет облазил
Kirill
Какой редактор юзаешь? Как создаешь реакт приложение? @ingvarrior
Игорь
Kirill
VSCode из под коробки умеет в джаваскрипт и ноду
Реакт приложения советую создавать через create-react-app, с ним нет проблем обычно
Ivan
Kirill
Не так много там мусора
Ivan
Ну хз, модульзы всегда жирные
Kirill
Только обратил внимание что там миллиард пакетов, но в package.json они не записаны
Kirill
Не особо удобно
Ivan
Kirill
Если деплоить куда-то фронт, то все равно юзать уже сбилженную версию
Но если хочешь закинуть на какой-нибудь гитхаб чтобы кто-то скачал и потестил это вообще не удобно
Ivan
Просто реакт приложение лучше делать на уровне:
npm init -y
yarn add react react-dom redux redux-react
yarn add babel@... webpack... -D
И будет тебе красивый пакейдж
Kirill
А в gitignore node_modules есть
Kirill
Ну, дело в том что оно не качается, в package.json требуемые пакеты не включены
Ivan
Vladislav
Vladislav
Может там и много мусора, но это фиксы багов, которые ты тоже будешь фиксить
Vladislav
В общем, писать свой велосипед - плохо
Vladislav
А если хочешь уменьшить размер бандла - юзай вью :D
Vladislav
Или свелте, его никто не обойдет
Ivan
А чего тут ориентироваться, чуточку больше слов написал в командной строке и все готово
Ivan
И порой не хочется качать пакет более новой версии, а указать тот что у тебя в глобале лежит
Ivan
Тот же вебпак и бабель
Kirill
Я дурак слепой, пакеты есть в package.json
Kirill
Не знаю как я не заметил, лол