Evgheni
а какой смысл если стили можно только для компонентов писать?
поэтому и юзают бэм, чтобы в рамках компонента стили работали
Anonymous
А по сколько во фреймворке стили компонента непосредственно привязаны к нему то смысл делать длинные имена классов
Evgheni
так вью сам проблему эту решает
ты про scoped стили? они не удобные что пиздец
Evgheni
почему
не действуют например на компонентов наследников, семантика в полной жопе
Anonymous
не действуют например на компонентов наследников, семантика в полной жопе
так компоненты наследники это отдельные компоненты
Anonymous
аа ты про наследование )
Vladislav
ну с другой стороны и не должны
Evgheni
для небольших правок я не спорю что scoped это хорошо но блин, смотришь потом в инспектор а там порнуха
Anonymous
кстати скажите еще как можно сделать компонент с разными шаблонами
Anonymous
то есть логика одна а шаблоны разные
Anonymous
я так понимаю наследоваться просто?
Vladislav
то есть логика одна а шаблоны разные
мб миксины ты имеешь ввиду?
Armen
Смотри Deep Selectors
Armen
я так понимаю наследоваться просто?
Можно создать два индекса для компонента. Типа такая структура: - componentName/ —- index1.vue —- index2.vue —- template1.html —- template2.html —— script.js —— style1.css —— style2.css
Anonymous
Правда тогда наоборот же 1 вью файл
Anonymous
а подключать пагом чтоли
Anonymous
кстати а вы каждый компонент в отдельной папке храните?
Armen
В index1.vue: <template src="./template1.html"/> <script src="./script.js" /> <style src="./style1.css /> В index2.vue: <template src="./template2.html"/> <script src="./script.js" /> <style src="./style2.css />
Anonymous
есть у кого качественный проект на гитхабе?
Armen
кстати а вы каждый компонент в отдельной папке храните?
Если он состоит из нескольких файлов то да
Anonymous
Интересно глянуть
Anonymous
интересный вариант )
Armen
Хотя, чтобы проще было, можно только script вынести в отдельный файл
Armen
А шаблоны и стили в .vue файлах прописать
Armen
Я чот сразу до этого не додумался)
Andy
@eddimensi короче, у меня не получилось с пропсами в компонент, хз может 20 часов без сна сказываются -_- решил сделать методом в самом компоненте для подсветки включенных фильтров setActiveFilters: function () { let f = Object.keys(this.$route.query); var i = f.length; while (i--){ this[f[i]] = true; } }, это норм?
Armen
А что у тебя?
Andy
у меня laravel и single file компоненты, а роутер для поиска/фильтрации + мессенджер. вот в мессенджере норм все работает. вообще гуд работало, пока mode history не поставил, но там это мешало, а тут походу нужно)
Andy
кличко стайл сори)
Nikita
Если люди выше способны отказаться от бема после бема, значит не очень они бем использовали. Сложно перестать мыслить без бема.
Nikita
https://github.com/c01nd01r/vue-bem-cn эту либу юзаю для бема
Anonymous
Если люди выше способны отказаться от бема после бема, значит не очень они бем использовали. Сложно перестать мыслить без бема.
это точно.. но когда делаю компоненты на вью и так все раскладывается на блоки собственно
xxtux
А что мешает компоненту задать корневой класс, а все внутри него каскадом
xxtux
Хотя это мало отличается от scoped
Anonymous
но элементы то никуда не пропали же
Эти элементы мне кажется проще каскадом делать потому что они в рамках компонента
Nikita
бред какой-то
Nikita
у бема все стили одноуровневые
Nikita
а ты добавляешь специфичность таким образом
Nikita
вообще сложно отказаться писать стили в "стиле бем", когда к этому уже привык. Да и мыслю я например только как блок-элемент-модификатор, и для компонентов я держу другую абстракцию, но в конечном итоге они у меня связаны и взаимодействуют с друг с другом
Harzink
хм. вопрос такой: делаю маленький проектик для общего развития. бэкэнда на нем не будет. как лучше организовать хранение настроек. вот vue-cookie - это ок. но чтобы на разбрасывать это все хотелось бы как-то это в одном месте собрать. при этом в store это будет ли нормально, если я буду по-сути делать геттеры и мутации при этом обращаясь на деле не к его хранилищу state, а cookie. или я вообще неправильно мыслю в этом случае?
Nikita
зачем тебе куки, если у тебя нет общение с сервером
Nikita
почему не использовать localStorage или indexedDb ?
Harzink
ну допустим я хочу сохранить выбраную в последний раз локализацию
Nikita
localStorage
Nikita
ты можешь почитать за localStorage ? Просто я не вижу преимуществ куки перед стором, если у тебя нет общения с сервером
Nikita
если тебе нужно настоящая база то можешь юзать indexeDb
Nikita
это клиенская база данных
Nikita
например этот проект сохраняет в такую базу всю свою базу, чтоб потом работать в оффлайн http://devdocs.io/javascript/
Andy
ребята, почему url не меняется? по идее if true, то после удаления строки в query путь должен меняться на новый, но происходит какой-то бред```if (this[filter] == false) { this.$router.push({ query: { ...this.$route.query, [filter]: 1, }}); this[filter] = true; } else if (this[filter] == true) { delete this.$route.query[filter]; this.$router.push({ push: 'vacancies', query: this.$route.query}); this[filter] = false; }```
Andy
пробовал с replace - еще хуже
Nikita
не знаю где ты такую логику выдумал
Nikita
сам придумал?
Harzink
например этот проект сохраняет в такую базу всю свою базу, чтоб потом работать в оффлайн http://devdocs.io/javascript/
хм. спасибо. LocalStorage попробую. я сходу не так подошел к вопросу и уже себе решил,но localStorage как раз сейчас и использую
Nikita
пересобирай обьект query без нужного поля и пушь его в роутер
Nikita
и что значит this.$router.push({ push: 'vacancies', query: this.$route.query}); push: 'vacancies'?
Andy
ну после delete в консоли query поменялось на нужное
Nikita
обьект ? Да
Nikita
но как роутеру узнать, что ты ему там в обьекте поле удалил?
Nikita
желательно в роутер пушить всегда новый обьект, а не модифицировать старый
Nikita
и я после недавной твоей новости не совсем понимаю как у тебя роутер работает, у тебя же типо не спа, а просто vue как виджеты, нет?
Andy
ну как-то работает) кривовато + мои кривые руки)
Nikita
ну предположительно пути должны меняться нормально, хотя ты уже пол вечера за какую-ту херню спрашиваешь
Nikita
так, что за строчка то? push: 'vacancies',
Andy
уже поменял на path...
Nikita
ты используешь роутер чтоб работать с ним с queryString?
Nikita
короче, лан это отход от темы
Nikita
попробуй для начала отдать роутеру новый обьект
Nikita
а не мутировать текущий
Nikita
а если два виджета таких будет на странице?)