@vuejs_ru
Vue.js — русскоговорящее сообщество

Общаемся на темы, посвященные Vue.js и опыту его использования. Проблемы. Новости. Решения. См. также: @js_ru, @react_js, @angular_ru, @nuxtjs_ru Вакансии только тут: @javascript_jobs

3988 members

Архив канала @vuejs_ru 4 февраля 2017 г.

06:17:17 ДП
07:29:12 ДП
User 113361293
Вчера добрались руки до него. Это охеренно. Помню как намучался с бойлерплейтами в нг2.
07:33:22 ДП
User 57772277
А обновить текущий проект можно без боли?
07:34:47 ДП
User 60331718
как такое возможно?
07:35:55 ДП
User 60331718
в доках же написано, что ключем может быть объект
07:36:32 ДП
User 55423102
ну объекты то разные :)
07:37:13 ДП
User 60331718
User 55423102
ну объекты то разные :)
:/ что, за фигня? не понимать 🙈
07:37:48 ДП
User 60331718
я не понимаю тогда, как этим пользоваться
07:38:13 ДП
User 60331718
по сути же от ключа берется хеш, а у обоих объектов он должен быть одинаковым
07:38:22 ДП
User 60331718
если объекты разные, то почему?
07:39:03 ДП
User 55423102
ну ты заранее объяви объект в переменную, и потом где используешь объект сейчас подставь её
07:39:05 ДП
User 55423102
заработает?
07:40:02 ДП
07:40:47 ДП
User 60331718
не, ну это жесть, если такое дерьмо творится в стандартной либе
07:41:34 ДП
User 55423102
ты в set поменяй
07:41:48 ДП
User 55423102
чтобы там уже переменная в которой объект была
07:42:25 ДП
User 60331718
User 55423102
чтобы там уже переменная в которой объект была
Не, мне такое не подходит, я у себя конструирую объект при передаче как ключ
07:42:43 ДП
07:43:25 ДП
User 55423102
да ты для теста
07:43:29 ДП
07:43:34 ДП
User 60331718
а, лады, ща
07:44:33 ДП
User 60331718
а вот так все работает
07:45:10 ДП
User 55423102
User 55423102
ну объекты то разные :)
ну вот :)
07:45:16 ДП
User 60331718
User 60331718
как такое возможно?
но все равно мне не понятно, почему вот так нельзя
07:45:25 ДП
User 60331718
а почему они разные то?
07:45:35 ДП
User 55423102
Ну потому что ты пишешь {} и это создание нового объекта
07:47:18 ДП
User 60331718
User 55423102
Ну потому что ты пишешь {} и это создание нового объекта
да, но в чем разница то между {a: 1} и {a: 1}?
07:47:37 ДП
User 55423102
в том что это два разных объекта
07:47:51 ДП
07:47:52 ДП
User 139059931
в том что это разные объекты созданные через new Object
07:48:12 ДП
User 60331718
их можно сделать как-то одинаковыми?
07:49:27 ДП
User 139059931
а Map - это стандартный Map?
07:49:34 ДП
User 60331718
User 139059931
а Map - это стандартный Map?
да, из es6
07:49:46 ДП
User 60331718
как тогда им вообще пользоваться?
07:50:12 ДП
User 60331718
дермище, нигде такой отвратности не встречал
07:50:57 ДП
User 55423102
@Fl0pZz 

Как map сравнивает ключи

Для проверки значений на эквивалентность используется алгоритм SameValueZero. Он аналогичен строгому равенству ===, отличие – в том, что NaN считается равным NaN. Поэтому значение NaN также может быть использовано в качестве ключа.

Этот алгоритм нельзя изменять или задавать свою функцию сравнения.
07:51:54 ДП
User 60331718
User 55423102
@Fl0pZz 

Как map сравнивает ключи

Для проверки значений на эквивалентность используется алгоритм SameValueZero. Он аналогичен строгому равенству ===, отличие – в том, что NaN считается равным NaN. Поэтому значение NaN также может быть использовано в качестве ключа.

Этот алгоритм нельзя изменять или задавать свою функцию сравнения.
мне не понятно, в чем разница между двумя объектами с динаковыми полями
07:52:01 ДП
User 60331718
почему js считает их различными?
07:52:23 ДП
User 164870167
Ссылки разные
07:52:37 ДП
User 55423102
Потому что это два объекта, которые по структуре одинаковы, но на деле объекты разные :)
07:53:10 ДП
User 60331718
тогда какой смысл поддержки обектов как ключей в словаря?
07:53:42 ДП
User 60331718
если каждый раз пытясь обратиться по этому ключу, мы не получим нужные объекты? в большинстве своем
07:54:06 ДП
User 55423102
Потому что в том варианте с переменной, где всегда ссылка на один и тот же объект — это всё будет работать
07:54:25 ДП
User 60331718
User 60331718
в доках же написано, что ключем может быть объект
вот почему
07:54:40 ДП
User 60331718
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Map/keys
developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Map/keys
The keys() method returns a new Iterator object that contains the keys for each element in the Map object in insertion order.
07:56:27 ДП
User 60331718
сраные доки :\
07:57:30 ДП
User 139059931
Не понятно... надо почитать как это работает
07:57:48 ДП
User 60331718
даже вот примеры есть
07:58:51 ДП
User 55423102
ну так в них и написано
07:58:54 ДП
User 55423102
вот смотри
07:58:59 ДП
User 55423102
ссылаются на один и тот же объект и все ок
07:59:01 ДП
User 139059931
а, ну тогда да, все понятно, у тебя просто 2 объекта новых)
07:59:03 ДП
User 55423102
а в конце на только что созданные
07:59:09 ДП
User 55423102
и расписано почему они неравны
07:59:26 ДП
User 60331718
тогда еще раз мне поясните, какой тогда смысл в ключах в виде объекта?
08:00:05 ДП
User 60331718
из разных мест же нельзя будет получить нужный объект, а таскать с собой еще и массив ключе - ну бреед жеж
08:00:44 ДП
User 139059931
ну... ты можешь сделать
let key = {a: 1}; map.set(key, false); key.a = 2; map.has(key) = true
08:00:50 ДП
User 60331718
такой подставы я от js не ожидал :/
08:01:08 ДП
User 55423102
Всё логично!)
08:01:14 ДП
User 60331718
User 55423102
Всё логично!)
неееет
08:01:54 ДП
08:01:55 ДП
User 60331718
ну вот теперь я не могу использовать Map как хранилищие и доставать, пихать в него какие-то элементы
08:02:34 ДП
User 55423102
можешь попробовать в ключ класть не объект, а строку после JSON.stringify
08:02:49 ДП
User 60331718
User 55423102
можешь попробовать в ключ класть не объект, а строку после JSON.stringify
парсинг не самый дешевый же
08:02:55 ДП
User 139059931
не не, стринга будет разная)
08:03:18 ДП
User 55423102
User 139059931
не не, стринга будет разная)
а почему кстати?
08:03:26 ДП
User 139059931
порядок не гарантирован при JSON.stringify
08:03:57 ДП
User 60331718
я как раз и использовать словарь хотел, потому что у него операции get, set, has должны стоить всего О(1) при использовании хешей
08:04:08 ДП
User 60331718
в плюсах бы все прокатило и все были бы счастливы
08:05:19 ДП
User 60331718
User 139059931
порядок не гарантирован при JSON.stringify
впрочем это подталкивает на мысль, что можно использовть шаблонные строки
08:05:52 ДП
User 60331718
но обратно как?
08:05:54 ДП
User 55423102
ааа... дааа... засада) может и так сложиться
08:06:22 ДП
User 55423102
User 60331718
в плюсах бы все прокатило и все были бы счастливы
ну а это js, значит надо страдать))))
08:06:48 ДП
User 60331718
User 55423102
ну а это js, значит надо страдать))))
не, ну мне кончено говорили что js срань, но чтобы настолько :D
08:07:09 ДП
User 55423102
ты просто не умеешь её готовить)))
08:07:54 ДП
User 139059931
А можешь напомнить какую проблемы ты решаешь?)
08:08:30 ДП
User 60331718
User 139059931
А можешь напомнить какую проблемы ты решаешь?)
то, что я не могу нормально использовать has
08:09:09 ДП
User 60331718
User 139059931
порядок не гарантирован при JSON.stringify
а это точно?
08:09:59 ДП
08:10:03 ДП
User 60331718
вот так если посмотреть, то такое можно и ручками кодировать, а декодировать через JSON.parse
08:12:46 ДП
User 60331718
const pointToJSON = ({x, y}) => {"x":${x},"y":${y}}``
08:13:05 ДП
User 139059931
да не, жесть какая-то)
08:13:30 ДП
User 60331718
что не сделаешь ради скорости работы с словарем
08:13:46 ДП
User 60331718
хотя парсинг может и съекст пости все
08:14:30 ДП
User 60331718
не, не съест
08:14:38 ДП
User 139059931
что бы работать с has тебе нужно будет мутировать один и тот же объект
const a = new Map();
const b = new Map();
b.set(a, false);
a.set('d', true)
b.has(a) // true
08:15:06 ДП
User 139059931
то есть просто не создавай новый объект)
08:15:37 ДП
User 152816933
О какой производительности парсинга ты говоришь?
08:16:32 ДП
User 60331718
User 139059931
что бы работать с has тебе нужно будет мутировать один и тот же объект
const a = new Map();
const b = new Map();
b.set(a, false);
a.set('d', true)
b.has(a) // true
вот это по подробнее
08:17:26 ДП
User 139059931
ну в смысле не создавай новый ключ, а мутируй старый. там проверка на key === key, соответственно new Object === new Object // false
08:17:37 ДП
User 139059931
логично же)
08:18:33 ДП
User 60331718
User 139059931
ну в смысле не создавай новый ключ, а мутируй старый. там проверка на key === key, соответственно new Object === new Object // false
а как мне обойтись без его создания то? у меня сам словарь создает и заполняется в одном  месте, а изменяется в совсем другом
08:19:06 ДП
User 60331718
вот он в мутации создается
08:19:45 ДП
User 60331718
а вот так в действии он изменяется (155 строчка)
08:21:00 ДП
User 55423102
номера строк это конечно круто, особенно когда их нет на скрине)))
08:21:18 ДП
08:21:22 ДП
User 60331718
уппс, мой косяк))
08:21:37 ДП
User 55423102
так может тебе вместо объекта просто конструировать строку из индексов? к примеру разделенными минусами или еще чем
08:22:34 ДП
User 60331718
на крайняк будут так делать
08:23:36 ДП
User 60331718
и парсить обратно через json.parse
08:25:33 ДП
User 139059931
это все дорогие операции, я не совсем вкурил в то, что происходит, но рас уж на то пошло, то заэкстендь Map и напиши свой has)
08:26:16 ДП
User 60331718
User 139059931
это все дорогие операции, я не совсем вкурил в то, что происходит, но рас уж на то пошло, то заэкстендь Map и напиши свой has)
я пока еще слишком нуб для этого
08:26:24 ДП
User 60331718
хотя попробовать можно
08:27:53 ДП
User 60331718
тогда нужно будет везде переписать операции сравнения
08:30:23 ДП
User 139059931
можешь еще выпендриться и ключем сделать не объект, а массив и делать join/split
08:30:56 ДП
User 60331718
https://developer.mozilla.org/ru/docs/Web/JavaScript/Reference/Global_Objects/WeakMap
developer.mozilla.org/ru/docs/Web/JavaScript/Reference/Global_Objects/WeakMap
Объект WeakMap — коллекция пар ключ-значение. В качестве ключей могут быть использованы только объекты, а значения могут быть произвольных типов.
08:31:03 ДП
User 60331718
а что насчет этого?
08:34:06 ДП
User 60331718
таже фигня
08:37:23 ДП
User 139059931
Да тут тебе ничего не поможет, можешь не пытаться)
08:37:36 ДП
User 60331718
User 139059931
Да тут тебе ничего не поможет, можешь не пытаться)
даже полифилы?
08:38:05 ДП
User 60331718
может кто уже написал свою реализацию? правда загуглить не получается :/
08:39:31 ДП
User 139059931
Блин, ну представь что ты сравниваешь кусок памяти с куском памяти на то что это один и тот же кусок, конечно нет)
08:48:43 ДП
User 60331718
карочи срань
08:49:11 ДП
User 60331718
я то думал что там не по адресу сравнение идет, а например по хешу или по побитовому сранвнению
08:50:33 ДП
User 60331718
Почему они не могут как во всех нормальных языках сделать возможность нормального сравнения?
08:51:27 ДП
User 60331718
В итоге это выясняется когда уже все написал и осталось всего пара строчек, чтобы, как я думал, заработало как надо
08:52:49 ДП
User 113361293
чувак, это буквально в первых параграфах любой книги объясняется
08:53:07 ДП
User 113361293
когда разговор заходит за операторы сравнения
08:53:39 ДП
User 60331718
Все все, ушёл читать
08:54:43 ДП
User 60331718
Хотя есть выход, там ведь в качестве ключа можно функцию передавать, может быть это можно как-то задействовать, надо будет посмотреть
08:56:11 ДП
User 85413039
Всем привет
08:56:53 ДП
User 139059931
User 60331718
Хотя есть выход, там ведь в качестве ключа можно функцию передавать, может быть это можно как-то задействовать, надо будет посмотреть
НЕТ!))) Хватит, храни массив, джойнь его)
class MyMap extends Map {
  hasKey(key) {
    return this.has(key.join(','))
  }
 pushKey(key, value = false) {
   this.set(key.join(','), value);
   return this;
 }
}
08:57:30 ДП
09:01:28 ДП
User 184398046
тогда от хеша никакого отличия нет
09:01:53 ДП
User 184398046
только еще хуже - очень медленно
09:04:22 ДП
User 60331718
User 139059931
НЕТ!))) Хватит, храни массив, джойнь его)
class MyMap extends Map {
  hasKey(key) {
    return this.has(key.join(','))
  }
 pushKey(key, value = false) {
   this.set(key.join(','), value);
   return this;
 }
}
Слишком дорогие операции поиска по массиву
09:04:34 ДП
User 60331718
А у меня она самая частая
09:15:24 ДП
User 152816933
Такое чувство, будто ты там базы данных на клиенте ворочаешь. Что там Кнут говорил по этому поводу?
09:21:15 ДП
User 85413039
Коллеги, такой вопрос
09:22:38 ДП
User 85413039
Как подключать компонент навбара для приложения?
09:23:11 ДП
09:23:27 ДП
User 85413039
Сделать App.vue как основную точку входа в приложение?
09:23:48 ДП
User 85413039
А ней например писать в шаблоне
09:24:54 ДП
User 85413039
<navbar></navbar>
<router-view></router-view>
09:26:50 ДП
User 85413039
вообще как бы предложили где стоит хранить и как подключать компоненты приложения, ту же страницу логина например
09:27:34 ДП
User 152816933
Укажи в components app.Vue твой navbar
09:28:10 ДП
User 85413039
спасибо
09:28:14 ДП
User 85413039
это понятно
09:29:40 ДП
User 85413039
в принципе здесь так и сделано
09:29:41 ДП
User 85413039
https://github.com/vuejs/vue-hackernews-2.0/blob/master/src/App.vue
github.com/vuejs/vue-hackernews-2.0/blob/master/src/App.vue
vue-hackernews-2.0 - HackerNews clone built with Vue 2.0, vue-router & vuex, with server-side rendering
09:29:57 ДП
User 152816933
И в vue-cli тоже
09:32:44 ДП
User 60331718
User 152816933
Такое чувство, будто ты там базы данных на клиенте ворочаешь. Что там Кнут говорил по этому поводу?
Зато уже сколько нового узнал
09:33:02 ДП
User 60331718
Я вот думаю, может не париться и ключи сделать строчками?
09:33:24 ДП
User 60331718
Сравнение коротких строчек не такое уж и дорогое
09:33:37 ДП
User 60331718
Точно не дороже сравнения объектов
09:35:47 ДП
User 85413039
User 60331718
Точно не дороже сравнения объектов
Символы?
09:36:17 ДП
User 60331718
User 85413039
Символы?
строки
10:06:25 ДП
User 136935602
User 152816933
Такое чувство, будто ты там базы данных на клиенте ворочаешь. Что там Кнут говорил по этому поводу?
Есть пряник и писать код?
10:06:38 ДП
10:13:33 ДП
User 108562525
js отстой, поэтому и maps/sets в нём такие отстойные 😌
10:25:11 ДП
User 136935602
Да и вообще нечего на js писать
10:25:27 ДП
User 60331718
не, ну что вы так, я все исправил
10:25:38 ДП
User 136935602
(троллей не кормлю)
10:26:15 ДП
User 60331718
правда выглядит теперь немного ужасно
10:40:57 ДП
User 139059931
User 60331718
правда выглядит теперь немного ужасно
следущий шаг - использовать ramda)
10:48:20 ДП
User 60331718
User 139059931
следущий шаг - использовать ramda)
воу, да, надо будет так сделать
10:48:29 ДП
User 60331718
когда этот допишу
10:51:04 ДП
User 60331718
меня больше go* растраивают
https://github.com/Fl0pZz/my2048/blob/master/src/store/actions.js

они вроде и похожи, но там некоторые махинации с индексами, особо не сократишь
github.com/Fl0pZz/my2048/blob/master/src/store/actions.js
Contribute to my2048 development by creating an account on GitHub.
11:31:14 ДП
User 1844260
Всем привет, зовут Алексей, из города (героя?) Самара. Занимаюсь разработкой на JavaScript. Для своих странных нужд написал https://git.io/vuegister, возможно будет еще кому-то полезно. Сюда зашел, чтобы посмотреть, что вообще в сообществе происходит.
#whois
github.com/iatsiuk/vuegister
vuegister - Vuegister (an acronym for vue-register) is a require hook for loading of the Vue.js single-file components (or *.vue files).
11:43:58 ДП
User 143326616
Народ, нужна помощь, только начал разбираться с vue-router, до этого без него ободились. Есть компонент PageA, привязанный к пути '/page-a'. У него внутри определён компонент TableA, содержащий таблицу. Таблица создаётся с помощью <tr v-for='row in table-data'>...</tr>. Каак из корневого компонента PageA пробросить данные для таблицы в TableA? Стандартынй способ data -> props почему то не работает.
11:48:44 ДП
User 184398046
стандартный способ работает. Ты где-то ошибся/опечатался.
Можешь скинуть gist с упрощенными компонентами, можем помочь найти проблему
11:49:14 ДП
User 136935602
row in table-data
11:49:27 ДП
User 136935602
row in tableData
11:49:33 ДП
User 60331718
все, можете поздравить меня, логики закончена, юхуу
11:49:41 ДП
User 136935602
Пропсы кемелкейсятся
11:49:54 ДП
User 136935602
Теперь написать к этому тесты :)
11:50:13 ДП
User 60331718
User 136935602
Теперь написать к этому тесты :)
ога
11:54:56 ДП
User 143326616
User 136935602
Пропсы кемелкейсятся
Я заню, при написание примера тут ошибся)
11:55:26 ДП
User 143326616
Доеду до дома, скину
12:05:27 ПП
User 64800685
https://habrahabr.ru/post/321136/
habr.com/post/321136
Новость, конечно, как специально для пятницы, но, тем не менее... Русская православная церковь запустила первый в России православный мессенджер «Правжизнь...
12:06:59 ПП
User 60331718
User 64800685
https://habrahabr.ru/post/321136/
habr.com/post/321136
Новость, конечно, как специально для пятницы, но, тем не менее... Русская православная церковь запустила первый в России православный мессенджер «Правжизнь...
Мля, я испугался, что мой код кто-то обозвал говнокодом :D
02:27:09 ПП
User 143326616
В процессе подготовки примера вопрос вроде бы решился. Только вот очень станным образом. По сути в шаблоне было нечто в стиле:
<tr v-for="user in users">
    <td>{{ user.uID }}</td>
    <td>{{ user.nickname }}</td>
</tr>
И такой вариант по каким-то причинам молча падал, если users передавалось через props (через data всё норм). Но если сделать так, то всё норм:
<tr v-for="user in users">
    <td v-text="user.uID"></td>
    <td v-text="user.nickname"></td>
</tr>
03:05:02 ПП
User 136935602
не может такого быть :)
03:05:05 ПП
User 136935602
ну в смысле очень странно
03:23:27 ПП
User 143326616
Шаблон для компонента подгружается через <script type="text/x-template">
04:38:39 ПП
User 60331718
@xanf_ua а ты пока копался в weex какие-нибудь доки/мануалы не находил?
04:40:37 ПП
User 136935602
На китайском
04:40:49 ПП
User 136935602
Сорцы читаю
04:44:04 ПП
User 138709614
На офф сайте же есть хорошие
04:44:10 ПП
User 138709614
На инглише
04:44:50 ПП
User 138709614
Только они почему-то в faq, а на docs и guide
04:46:38 ПП
User 60331718
User 138709614
Только они почему-то в faq, а на docs и guide
Только что чекал доки: coming soon
04:49:29 ПП
User 60331718
React Tetris (Score: 103+)

Link: http://j.mp/2kslBAZ
github.com/chvin/react-tetris
react-tetris - Use React, Redux, Immutable to code Tetris.
05:03:55 ПП
User 138709614
User 60331718
Только что чекал доки: coming soon
https://weex-project.io/v-0.10/guide/index.html
weex-project.io/v-0.10/guide/index.html
TutorialWe will make a simple but realistic list, in which the technologies Weex uses will be shown. This form of list also works for a lot of e-commercial apps and mobile sites. Getting StartedLet’s
05:06:00 ПП
User 138709614
Я же говорю. они в faq разделе
05:06:38 ПП
User 138709614
Еще с 20го января как, если не раньше
05:16:01 ПП
User 60331718
Вах, пасиба
05:17:54 ПП
User 108562525
а про что этот weex?
05:18:32 ПП
User 138709614
Как реакт нэтив на вью
05:19:33 ПП
User 108562525
а, понял.
05:19:37 ПП
User 40595124
Истории успеха людей из данной конфы имеются по Weex?
05:19:55 ПП
User 138709614
Пишешь привычные вью компоненты - транспайлится в нативные приложения на андроид и ios
05:20:36 ПП
User 138709614
Про виндоус мобайл не знаю
05:21:12 ПП
User 138709614
User 40595124
Истории успеха людей из данной конфы имеются по Weex?
Только ознакомиться баловался
05:22:39 ПП
User 123572200
User 40595124
Истории успеха людей из данной конфы имеются по Weex?
Илья говорил что сыроват вроде еще. Плюс доки недоконца переведены на английский даже.
05:23:06 ПП
User 123572200
А так думаю готовить почву для переезда с кордовы
05:26:47 ПП
User 316815804
Подскажите пожалуйста, при попытке ввести в консоль "webpack", ошибок нету - https://gyazo.com/c53dabd4424391d824ac72dc9b630eb9 Но если посмотреть в файл, то ничего не скомпилировалось - https://gyazo.com/21a220b79110a98e1858032925f4d995
05:26:59 ПП
User 112715267
Возможно ли подменить значение в data Vue, если его инстанс не кладется в переменную?
05:27:03 ПП
User 316815804
Вот webpack.config.js - https://gyazo.com/b9152339a3e8c6d1fc3d4d0871d16630
gyazo.com/b9152339a3e8c6d1fc3d4d0871d16630
05:28:58 ПП
User 108562525
User 112715267
Возможно ли подменить значение в data Vue, если его инстанс не кладется в переменную?
this внутри какого-нибудь метода? (created)
05:29:15 ПП
User 112715267
я имею в виду вообще
05:29:18 ПП
User 112715267
человек зашел на сайт
05:29:24 ПП
User 112715267
и может ли он из консоли подменить
05:30:10 ПП
User 108562525
а. хм. ну, если собираешь вебпаком, он же там инкапсулирует всё
05:30:43 ПП
User 112715267
собираю
05:30:52 ПП
User 108562525
если он в курсе, во что оно собирается, то он конечно может даже breakpoint поставить
05:31:00 ПП
User 108562525
и поменять значение
05:31:05 ПП
User 108562525
и продолжить работать
05:31:41 ПП
User 60331718
Можно же просто обфускатор поставить
05:32:07 ПП
User 112715267
Да это тут не причем
05:32:12 ПП
User 112715267
Я вообще чисто теоретически имею в виду
05:32:16 ПП
User 112715267
Возможно ли такое
05:32:28 ПП
User 60331718
Конечно можно
05:32:44 ПП
User 60331718
Хотябы потому, что пользователь имеет доступ к коду и логике
05:32:59 ПП
User 60331718
Можно и инъекции тогда делать
05:34:16 ПП
User 112715267
Да, но
05:34:28 ПП
User 112715267
он же не знает где это все хранится
05:34:29 ПП
User 112715267
в памяти
05:34:34 ПП
User 112715267
по идее
05:34:40 ПП
User 112715267
а напрямую через код он не может, получается
05:35:50 ПП
User 1844260
он может поставить брекпойнт на первой строке твоего скрипта и не дожидаться, пока это в память попадет
05:35:52 ПП
User 1844260
это раз
05:36:22 ПП
User 1844260
да и зачем ему менять стейт твоего приложения, скорее всего у тебя самое интересное в http запросах, их и будут симулировать
06:43:52 ПП
User 136935602
User 138709614
https://weex-project.io/v-0.10/guide/index.html
weex-project.io/v-0.10/guide/index.html
TutorialWe will make a simple but realistic list, in which the technologies Weex uses will be shown. This form of list also works for a lot of e-commercial apps and mobile sites. Getting StartedLet’s
Аккуратно, это устаревшая фигня.
07:24:03 ПП
User 144310173
Всем привет
07:24:13 ПП
User 282857241
привет
07:27:55 ПП
User 113361293
привет
07:37:07 ПП
User 144310173
Мне сказали, что канал по вью хороший, а ссылку на чат дали
07:38:34 ПП
User 144310173
Ну и норм)
07:41:45 ПП
User 136935602
вообще-то тут одни толстые зеленые тролли
07:41:51 ПП
User 136935602
и @termosa )
07:42:04 ПП
User 136935602
пойду готовиться к стриму
07:42:06 ПП
User 144310173
Ну и лан, не привыкать
07:42:15 ПП
User 136935602
вчера заказал себе железок аудио - скоро звук будет веселее
07:42:23 ПП
User 144310173
Главное чтоб тусовка хорошая была
07:42:37 ПП
07:54:14 ПП
User 133750577
Кто-нибудь разобрался, как в weex собрать не одну страницу, а приложение вообще? Типа, сменить заголовок, например? Я как то даже прогуглить не могу
07:55:12 ПП
User 60331718
Если кто разберется, начните доки писать
07:55:49 ПП
User 133750577
Еще раздражает, что гугл постоянно подсовывает справку по Wix
07:55:57 ПП
07:56:20 ПП
User 60331718
Так используй язык поиска
07:56:34 ПП
User 60331718
Он конечно сраный, но лучше чем ничего
07:57:47 ПП
User 316815804
Всем здравствуйте
07:57:50 ПП
User 316815804
Не поможете?
07:58:14 ПП
User 316815804
Использую express.js сервер и через ejs передаю <header user="<%= user %>"</header>
07:58:30 ПП
User 316815804
Вот что передаётся - https://gyazo.com/c981ddbcc55fcdedaf4f6c0a85bbcd89
gyazo.com/c981ddbcc55fcdedaf4f6c0a85bbcd89
07:58:37 ПП
User 316815804
Как это передать в виде нормального json?
07:59:19 ПП
User 316815804
Не понял
07:59:32 ПП
User 169564810
я тоже
07:59:33 ПП
07:59:36 ПП
User 316815804
Вот как я получаю user : https://gyazo.com/f55c6012f5c27be56f997cd452617248
gyazo.com/f55c6012f5c27be56f997cd452617248
08:00:04 ПП
User 169564810
это относится к vue-js ?
08:00:29 ПП
User 316815804
А как, по твоему мнению я это делаю?)
08:00:45 ПП
User 169564810
если да, тогда используй v-bind:
<header v-bind:user="<%= user %>"></header>
08:01:36 ПП
User 316815804
https://gyazo.com/a0bb7e1471034d007ff2823be0f86944
gyazo.com/a0bb7e1471034d007ff2823be0f86944
08:02:16 ПП
User 169564810
и здесь тоже используй v-bind
08:02:18 ПП
08:02:19 ПП
08:02:21 ПП
08:02:24 ПП
User 316815804
Спасибо :)
08:02:39 ПП
User 169564810
заходи еще
08:30:50 ПП
User 133277047
User 60331718
мне не понятно, в чем разница между двумя объектами с динаковыми полями
Это разные участки памяти с чего бы им быть равными?
08:49:57 ПП
User 136935602
User 139059931
порядок не гарантирован при JSON.stringify
но все современные реализации поддерживают его консистентным
08:52:04 ПП
User 108562525
User 136935602
но все современные реализации поддерживают его консистентным
главное, чтобы функция была детерменированной
08:52:21 ПП
User 108562525
то есть при одних и тех же выходных данных давала один и тот же результат

ну и порядок полей у объектов сохраняла
10:09:28 ПП
User 112715267
Бло, геттеры в Vuex не реактивные, да?
10:12:23 ПП
User 60331718
User 112715267
Бло, геттеры в Vuex не реактивные, да?
Реактивные
10:12:42 ПП
User 60331718
Но чтобы они ими были, ты должен использовать только реактивные свойства
10:12:55 ПП
User 112715267
Я просто ща в v-model запихал геттер
10:12:59 ПП
User 60331718
Например length у array - не реактивное
10:13:05 ПП
10:13:08 ПП
User 112715267
Ааааа
10:13:15 ПП
User 112715267
У меня arr.filter()
10:13:21 ПП
User 112715267
Оно тоже не реактивно, наверное
10:24:57 ПП
User 108562525
User 112715267
У меня arr.filter()
использую его в computed свойстве и всё ок
10:54:18 ПП
User 282857241
глупый (наверное) вопрос - хочу я, скажем, написать компонент для Vue, на гитхаб выложить, в npm.
при его разработке мне понадобиться Vue как зависимость, но включать ее в собранный билд я не хочу, так как в проектах, куда я этот компонент импортирую, она уже будет. как правильно решить такую проблему? как вы разрабатываете компоненты для последующей их дистрибуции через npm?
10:56:12 ПП
User 164870167
"peerDependencies": { "vue": "..." }
10:57:32 ПП
User 133750577
Те кто юзают твой пакет не импортят твой собранный билд. Они импортят только соответствующий vue или js-файл, который указан в package.json как main
11:00:09 ПП
User 282857241
Кисик, спасибо. Не подскажешь, через npm cli с каким-нибудь ключом так пакет можно установить?
Рома, то есть собирать компонент вообще смысла нет? И директорию с билдом можно в репозитории игнорировать?
11:00:27 ПП
User 112715267
я уж подумал, тут страсти какие-то, а тут реально кисик
11:00:39 ПП
User 133750577
Кисик, спасибо
11:00:48 ПП
11:01:56 ПП
User 136935602
User 282857241
Кисик, спасибо. Не подскажешь, через npm cli с каким-нибудь ключом так пакет можно установить?
Рома, то есть собирать компонент вообще смысла нет? И директорию с билдом можно в репозитории игнорировать?
вообще-то наоборот :) чаще всего main файл указывает на собранный файл
11:02:39 ПП
User 133750577
User 136935602
вообще-то наоборот :) чаще всего main файл указывает на собранный файл
Речь о vue компоненте, если я правильно понял
11:03:10 ПП
User 136935602
тогда там  понятие "сборка" очень стремное )
11:03:14 ПП
User 282857241
и еще один, наверно, еще глупее :) посмотрел я, как разные чуваки структурируют файлы в проектах c Vue - в основном делают отдельные папки с роутером и store. Так вот мне не понравилось, что при таком подходе приходится везде импортировать Vue, чтобы вызвать Vue.use(). Я решил, что у меня в папках этих будут только данные. Сами либы у меня импортируются 1 раз в main.js и применяются там же, а передаются  в них импортированные переменные из других папок.

так вот вопрос - есть ли смысл так делать? я наивно полагаю, что чем меньше импортов, тем легче бандл. надеюсь, понятно объяснил
11:03:53 ПП
User 136935602
нет, на размер бандла это не влияет
11:03:55 ПП
User 282857241
User 133750577
Речь о vue компоненте, если я правильно понял
а какая разница, что собирать?
11:04:05 ПП
User 136935602
каждый модуль будет включен в проект ровно один раз
11:04:23 ПП
User 282857241
Вот оно как. Круто) спасибо
11:05:08 ПП
User 282857241
а как Webpack понимает, в каком месте надо сделать импорт, а в каком нет? Чем ближе к entry тем приоритетней?
11:05:37 ПП
User 136935602
что значит "сделать импорт"
11:05:42 ПП
User 136935602
импорт это не инлайн файла модуля
11:07:39 ПП
User 282857241
это я понимаю. видимо, я еще не придумал, как сформулировать вопрос)
главное, что меня интересует это как правильно разрабатывать реиспользуемые компоненты
11:08:00 ПП
User 282857241
если я разрабатываю компонент мне нужен Vue, а значит он попадет в бандл. это так?
11:10:19 ПП
User 282857241
Роман, мне кажется, вы не правы. Как работают импортируемые компоненты, если package не указывает на собранный файл? Не собираются же они сборкой вашего проекта
11:10:48 ПП
User 282857241
речь идет об пакетах, установленных в проект через NPM
11:10:54 ПП
User 133750577
User 282857241
Роман, мне кажется, вы не правы. Как работают импортируемые компоненты, если package не указывает на собранный файл? Не собираются же они сборкой вашего проекта
Естесственно, собираются
11:11:14 ПП
User 133750577
Это же vue-компоненты
11:11:44 ПП
User 133750577
Ну например https://github.com/airyland/vux
github.com/airyland/vux
Mobile UI Components based on Vue & WeUI. Contribute to airyland/vux development by creating an account on GitHub.
11:13:00 ПП
User 133750577
Или любой другой vue-пакет
11:13:36 ПП
User 133750577
main будет указывать почти всегда в импорт-экспорт
11:13:45 ПП
User 133750577
Я вообще, не очень понимаю, в чем вопрос
11:14:26 ПП
User 133750577
Вы предлагаете каждый vue-пакет собирать с vue.common.js и это импортировать?
11:15:15 ПП
User 282857241
я не предлагаю, я интересуюсь :)
11:16:35 ПП
User 133750577
Бибилиотеки, jQuery, или сам Vue, например импортируются собранными обычно, да
11:16:54 ПП
User 133750577
Чтобы их можно было использовать сразу импортом скрипта в страницу
11:17:01 ПП
User 133750577
Для vue-компонентов такое  не нужно
11:17:10 ПП
User 282857241
вот. вот этого я не знал
11:21:53 ПП
User 282857241
у меня есть еще вопросы, но их надо сформулировать. спасибо, что помогли