@vuejs_ru

Страница 3523 из 3900
iPrior
28.08.2018
14:43:45
Простите, на совещание утащили. За ответы спасибо.

Stanislav
28.08.2018
14:43:58
Ivan
28.08.2018
15:38:50
Скажите, в чем приципиальная разница между миксинами, и если использовать extends

Arsen
28.08.2018
15:40:13
Скажите, в чем приципиальная разница между миксинами, и если использовать extends
Почти ни в чём, просто миксинов ты можешь добавить несколько, а наследовать компонент - только один

Google
Arsen
28.08.2018
15:40:36
Я использую extends, когда мне надо расширить функционал какого-то компонента(который писал не я)

Женя
28.08.2018
15:41:42
Товарищи. Как вы работаете с коллекциями? Есть какие то практики?

Arsen
28.08.2018
15:42:10
А mixin только для подмешивания некоторых общих методов/полей/пропсов, во избежание одинакового кода в нескольких компонентах

Stivn
28.08.2018
15:44:42
как можно скомпилировать файл со всеми его зависимостями в один файл

Vlad
28.08.2018
15:46:50
Построив дерево зависимостей
Вебпак кстати никакое дерево не строит, а я всегда думал, что там круто наворочено)

Alex
28.08.2018
15:47:13
Под капотом строит

Там обход идёт все равно

Vlad
28.08.2018
15:47:29
Под капотом на этапе сборки js ?

Alex
28.08.2018
15:48:03
Что бы решить вопрос дедубликации

Vlad
28.08.2018
15:49:08
Так каждый файл он просто оборачивает в анонимную функцию, заменяет импорты на вызов своей функции, и все. Дубликатов быть же не может

Google
Vlad
28.08.2018
15:55:05
Это ты глядя на результат работы делаешь вывод )?
Да, под капотом не разбирался, как он фаршит js

Alex
28.08.2018
15:59:46
Да, под капотом не разбирался, как он фаршит js
Заебись делать выводы глядя на результат

Продолжай в том же духе ;)

Nutscracker
28.08.2018
16:00:32
Посоветуйте как быть? В реакте jquery - это как бы фу, не круто, хотя положа руку на сердце многие ui компоненты в либах таки используют jquery. В vue вроде более демократичны в этом отношении. Но в итоге я хз как лучше поступить, к примеру нужно мне табы реализовать, брать готовый компонент с бутстрапа например - где под капотом jquery. А дальше если мне нужно, пытаться как то vue логику сбоку припилить частично, чтобы за состоянием следить. Либо же это плохая идея вообще юзать ui компоненты бутстрапа и лучше взять какой то фреймверк типа bootstrap-vue или Vuetify и разбираться с их кривым апи?

Arsen
28.08.2018
16:02:58
Если честно, не уловил разницу(
Функционально разницы нет

extends: SomeComponent === mixins: [SomeComponent]

Ivan
28.08.2018
16:04:06
extends: SomeComponent === mixins: [SomeComponent]
окей, спасибо) просто зачем тогда они нужны)

Alex
28.08.2018
16:04:35
Функционально разницы нет
Одно работает с прототипом, декоратор же работает с конструктором

Вроде так

Если ты наследуется то идёт prototype chain

Миксины в зависимости от реализации обычно уже экстендят экземпляр

Arsen
28.08.2018
16:06:02
Я смотрел исходники, там логика абсолютно одинаковая

Vlad
28.08.2018
16:06:03
Что бы решить вопрос дедубликации
А ты в это в коде нашел? Как может дубликация произойти?

Arsen
28.08.2018
16:06:03
https://github.com/vuejs/vue/issues/7412

Alex
28.08.2018
16:06:28
Без конкретики

Arsen
28.08.2018
16:07:25
https://github.com/vuejs/vue/blob/52719ccab8fccffbdf497b96d3731dc86f04c1ce/src/core/util/options.js#L381

Ivan
28.08.2018
16:08:28
Еще вопрос, как поступить. Нужно, чтобы при разном знаении пропса у формы ,импортился разный компонент с инпутом. Можно ли так сделать?

Arsen
28.08.2018
16:10:34
окей, спасибо) просто зачем тогда они нужны)
Короче, я юзаю миксины, когда надо подмешать одинаковый функционал в разные компоненты, при этом сам миксин не является компонентом и не может быть использован в шаблоне. А extend юзаю в том случае, если надо расширить функционал уже существующего компонента, т.е. то, что указывается в extends является готовым к использованию компонентом

Google
Arsen
28.08.2018
16:12:44
Еще вопрос, как поступить. Нужно, чтобы при разном знаении пропса у формы ,импортился разный компонент с инпутом. Можно ли так сделать?
Юзай <component :is="componentName" /> где componentName это computed import ComponentOne from './path/to/componentOne'; import ComponentTwo from './path/to/componentTwo'; export default { components: { ComponentOne, ComponentTwo }, props: { someProp: { type: String, // Может иметь значения 'one' и 'two' } }, computed: { componentName() { const obj = { one: 'ComponentOne', two: 'ComponentTwo', }; return obj[this.someProp]; }, }, }; </script>

Michael
28.08.2018
16:14:05
ретурн забыл

Arsen
28.08.2018
16:14:22
ретурн забыл
Случайно отправил раньше чем дописал

Michael
28.08.2018
16:14:39
ежжи ☝

Arsen
28.08.2018
16:15:52
Вопрос а нашо

Ну если тебе так сильно надо можешь попробовать вот так: const ComponentOne = () => import('/path/to/componentOne');

(но я не уверен, что будет работать, надо проверить)

А логика смены компонентов такая же как выше

Только в данном случае компонент будет импортиться только тогда, когда его надо будет отрендерить

Ivan
28.08.2018
16:25:20
Только в данном случае компонент будет импортиться только тогда, когда его надо будет отрендерить
Есть форма, которую использовать на наскольких сайтах. А на них разные инпуты, вот ломаю голову, как это наиболее безболезненно сделать

iPrior
28.08.2018
16:27:28
Kirill
28.08.2018
16:27:48
как лучше сделать, у меня есть 2 дива, с одинаковыми классами, нужно одному с дивов, добавить клас, через функцию при или после загрузки страницы

Kirill "Loskir" ?¹³
28.08.2018
16:30:23
beforeMount мб
Я забыл, какая там последовательность вызова хендлеров

Michael
28.08.2018
16:30:34
Я забыл, какая там последовательность вызова хендлеров
судя по его вопросу, ему чихать на неё.

Google
iPrior
28.08.2018
16:30:42
не, я понимаю, что бывают ситуации когда хочется всё управление данными в одном месте держать
Расскажу ситуацию свою: у меня огромная форма состоит из примерно 50 компонентов разной вложенности, некоторые компоненты используются несколько раз, в разных контекстах. Так вот, форма создания хорошо работает, что-то через props прокидываю и вроде всё хорошо. Но вот как сделать форму редактирования? как данные уже ранее сохраненные в базе дотащить до компонентов? Вот отседа vuex и вырос

Arsen
28.08.2018
16:33:13
Экспортить функцию, которая принимает компонент инпута и возвращает компонент формы с этим инпутом, но это извращение какое-то

iPrior
28.08.2018
16:34:35
и с vuex вроде всё отлично, но вот то что компонент, как-то, должен знать имя своего модуля в глобальном store.. Значит ли это, что с помощью чей-то матери и джентельменского соглашения, я называть модули компонентов при добавлении в глобальный store должен именовать, например storeComponentName?

Admin
ERROR: S client not available

Ivan
28.08.2018
16:36:23
ифами.
А как во вью с оптимизацией? если иметь много ифов и компонентов, которые не будут использоваться?

Lao9s
28.08.2018
16:43:12
Hello, i use Vuex . In App.vue : let _this = this; _this.$Progress.start(); _this.$store.dispatch('getGenerale').then(function(){ _this.$Progress.finish(); }); in Form.vue i try to get this.$store.getters.generale with computed computed: { generale(){ return this.$store.getters.generale } } but when i type in Form.vue in created() , i see lenght 0, because Ajax has not yet responded. How can I do this?

Lao9s
28.08.2018
16:46:18
Form.vue is template of the route

Google
Alex
28.08.2018
16:47:13
what's the main problem with getting 0 in computed property?

you can't render something or getting error?

Nathan
28.08.2018
16:47:45
Vue.js — русскоговорящее сообщество ?

Alex
28.08.2018
16:47:58
нам не сложно и на английском ответить

;)

Nathan
28.08.2018
16:48:31
ok

Lao9s
28.08.2018
16:51:12
I'm sorry, it's hard to explain the problem, I have a complicated structure. Thank you, I find a solution

Alex
28.08.2018
16:51:36
you're welcome

Michael
28.08.2018
16:55:54
I'm sorry, it's hard to explain the problem, I have a complicated structure. Thank you, I find a solution
Programming is struggling with complexity. So, your goal is to feel vue and swim smooth))

Lao9s
28.08.2018
16:55:55
I have resolved, i added a condition in the App.vue <router-view: key = "$ route.fullPath" v-if = "Object.keys (general) .length"> </ router-view>

Lao9s
28.08.2018
16:57:20
Nutscracker
28.08.2018
17:02:43
табы на чистом вью есть, как и всё остальное
да но тогда придется стайлить самому, чтобы приводить сайт к какому то общему дизайну

Lao9s
28.08.2018
17:04:41
Michael
28.08.2018
17:10:07
What is the best solution?
Dig up to the parents of this <router-view /> and rethink a little.

Igor
28.08.2018
17:10:16
Юзаю mdbootstrap. Пытаюсь сделать модалку как в документашке https://mdbootstrap.com/vue/advanced/modals/ Но в консоль выдаёт ошибку Uncaught ReferenceError: jQuery is not defined Кто-нибудь сталкивался с этой дичью?

Страница 3523 из 3900