Oleksandr
Подскажите, пожалуйста:
есть компонент
Vue.component('simple', {
template: '<div>\
{{ message }}\
</div>',
data: function () {
return {
message: 'Привет, Vue!'
}
},
mounted: function () { console.log('mounted', this.$el) },
})
пробую его тестировать в jest, создаю экземпляр с помощью vue-tests-utils
var wrapper = VueTestUtils.mount(Vue.component('simple'), { localVue })
в браузере в хуке mounted выводится в консоль отрендеренный элемент, а в тесте такая байда
mounted Comment {
vue:
VueComponent {
_uid: 0,
_isVue: true,
'$options':
{ components: [Object],
...
также, wrapper.html() == undefined
как сделать что б монтирование отрабаывало и компонент рендерился?
Armen
Подскажите, пожалуйста:
есть компонент
Vue.component('simple', {
template: '<div>\
{{ message }}\
</div>',
data: function () {
return {
message: 'Привет, Vue!'
}
},
mounted: function () { console.log('mounted', this.$el) },
})
пробую его тестировать в jest, создаю экземпляр с помощью vue-tests-utils
var wrapper = VueTestUtils.mount(Vue.component('simple'), { localVue })
в браузере в хуке mounted выводится в консоль отрендеренный элемент, а в тесте такая байда
mounted Comment {
vue:
VueComponent {
_uid: 0,
_isVue: true,
'$options':
{ components: [Object],
...
также, wrapper.html() == undefined
как сделать что б монтирование отрабаывало и компонент рендерился?
Чот не понимаю чо ты делаешь
Armen
Vue.component объявляет компонент
Armen
Или я чего-то не знаю?
Oleksandr
я пытаюсь тестировать компоненты не черех однокомпонентные файлы .vue и без webpack
Armen
Ща сек, надо доки чекнуть
Oleksandr
Vue.component('simple') - так я получаю свой компонент в тесте
Oleksandr
Vue.component('simple').options - это обьект с опциями с которыми я обьявляю компонент
Armen
Да, уже нашёл в доках, что так можно
Armen
Попробуй так:
import { shallow } from '@vue/test-utils';
const wrapper = shallow(Vue.component('simple').options, { localVue });
Armen
Armen
Armen
Oleksandr
приятного!
Armen
Спс
Максим
Спс
тебе надо авку на этого деда сменить)
Armen
Максим
и общаться только этими стикерами
Armen
Я только вчера себе добавил
Armen
https://github.com/nuxt/nuxt.js/issues/2818 кому не лень посмотрите, может будут идеи почему так, а то nuxt-овская команда чот не спешит
Andy
народ, кто-то как-то пытался отойти от вот этого “object.sub_object.property”, когда работа с такой нотацией часто вызывает “Cannot read property ‘property’ of undefined”, в случае если одного из суб-объектов или свойств нет?
знакомый рассказал как он юзает ImmutableJS на реакте, вроде он эту проблему решает..
а кто как эту проблему решает из вас? пишете “if (object.sub_object)” ?
Armen
Andy
та да, я так тоже делаю, но это жестко, что везде так приходится
Andy
так и живем?
Armen
Ну лично мне не много где вообще это надо
Armen
Стараюсь разбивать объекты на более мелкие перед обработкой
Ilya
ребят, кто шарит как можно в компоненте отрендерить html файл(<template src = "index.html"></template>), который бы в html теле - мог бы иметь тег <script>. Вот пример index.html
Ilya
Ilya
просто таким образом в html файлер может быть только html без тегов скрипт или стиль
Armen
А зачем это тебе вообще?
Ilya
создавать отдельный файл под скрипты и импортить в темплейте - тоже не варик
Armen
Чё-то ты не то делаешь
Stanislav
Ruslan
Если другая страница, то можно в iframe и связывать
Ilya
асинхронные компоненты?
Ilya
Не все проблемы можно решить на чистом vue
Ilya
А зачем это тебе вообще?
Michael
правый хайкик??
Michael
крутяк
Armen
Николаич
Николаич
Особенно после TinyMCE зашел на ура просто
Сергей
Я не пойму как его подключить(
Сергей
mount with global
mount with component
register quill module
что из этого надо?
Michael
а чем вам monaco и codemirror не нра?
Michael
Аааа, они не вот ю си вот ю гет
Michael
ок
Bohdan
Господа, а не покажите какой хук юзаэте что бы перенаправлять например незаригистрированого пользователя на страничку авторизации?
Vladislav
Egor
Alex
Bohdan
в документации написано что вроде В 2.5.0+ вы можете зарегистрировать глобальный хук с помощью router.beforeResolve.
Alex
Зачем ждать резолва компонента чтобы туда не идти?)
Bohdan
ок, сенкс
Anton
привет, есть тот самый пример работы Vue, почему когда я через консоль меняю value у инпута, то текст на инпутом не меняется?
Anton
http://puu.sh/zLLfN/e66b0fc37f.png
Alex
Alex
В примере посмотрите — там в vm наверное сохраняют экземпляр, вот через него
🐏 Alexander
Anton
🐏 Alexander
да
забудь, здесь подход совершенно другой, думай компонентами, думай, что у тебя дерево компонентов, и данные передаются от верхнего к нижнему
Bohdan
а не подскажите как правильно запихнуть плагин, а то не работает
Bohdan
Armen
Anton
🐏 Alexander
Bohdan
что бы не импортить в комонентах
🐏 Alexander
можешь в window записать, тоже не надо будет импортировать
Bohdan
ну как бы хотелось попробовать в Vue
🐏 Alexander
ну зачем
Bohdan
ради того же опыта
🐏 Alexander
не надо так делать
Bohdan
почему?
🐏 Alexander
не зачем засорять протопип, чем чище будешь, тем лучше
Bohdan
ок, ну а все-таки почему так не работает?