Mikhail
А пока это вас только путать будет.
Vlad
подход разумный безусловно, может подкинете пример такой сетки или гуглить дальше?
Mikhail
.container { display: flex; flex-flow: row wrap; } все, в общем то :)
Mikhail
Почитайте на досуге: http://frontender.info/a-guide-to-flexbox/ Оптимальное на данный момент средство для построения сеток.
Vlad
.container { display: flex; flex-flow: row wrap; } все, в общем то :)
а во вьюхе ng-repeat в котором div'вы с фото и названием внутри?
Mikhail
Ну да, что -то вроде этого: <div class="container"> <div class="photo" ng-repeat="..." ng-if="!card.deleted">...</div> </div>
Vlad
спасибо больше, буду разбираться
Mikhail
на здоровье :)
Vlad
на здоровье :)
совсем недурно выходит) адаптивное размещение тоже присутствует, а использовать нативные средства куда приятнее
Mikhail
:)
Vlad
вообще все отлично, но хотелось бы улучшить кое-что. при добавлении новой карточки (картинка+подпись+кнопка удаления) я явно вызываю функцию активации контролера activate() и все карточки перезагружаются $scope.add = function(image){ console.log('add char'); var i=image.files[0]; var reader = new FileReader(); reader.onload=function(e){ var document_=e.target.result; var document_=document_.split(';base64,')[1] var name="CharName"; $api .post("client/media/char", {document: document_, name: name}) .success(function(data){ var char = data.result; vm.chars.push(char); console.log(char); activate(); }); } reader.readAsDataURL(i); } это происходит быстро, но хотелось бы избежать этого мигания. если ее оттуда убрать, то карточка добавляется, но без фото. можно это исправить как-то?
Vlad
Mikhail
Код вьюхи карточки покажите
Mikhail
шаблон, в смысле
Vlad
<div class="container-media"> <div class="photo" ng-repeat="char in media.chars" ng-if="!char.deleted"> <div ng-click="media.delete(char.id); char.deleted=1;" uib-tooltip="Delete" class="ng-scope"> <em class="fa fa-times media-delete-btn"></em> </div> <div data-ng-click="char.editing = 1"> <div class="photo-wrapper"> <img src="" data-ng-src="{{char.src}}" data-imageloaded="" data-loadedclass="photoloaded" class="img-responsive" /> <div class="photo-loader"> <div class="sk-spinner sk-spinner-rotating-plane"></div> </div> </div> <div data-ng-if="char.editing"> <form ng-submit="media.submit(char.id, char.name); char.editing = 0"> <input class="form-control" ng-model="char.name"> <!-- <button type="button" class="btn btn-labeled btn-danger" ng-click="media.delete(char.id); char.deleted=1"> <span class="btn-label"><i class="fa fa-times" ></i></span>Delete </button> --> </form> </div> <div ng-if="!char.editing" class="photo-description"> <h3>{{char.name}}</h3> </div> </div> </div> </div>
Mikhail
А в data.result.src с сервера приходит нормальный путь к картинке?
Vlad
нет, при загрузке я его форматирую до нормального вида, а тут забыл - вы совершенно правы
Vlad
теперь все ок
Vlad
вопрос насчет использования `filter`, почему показывает карточку с именем z при введеном тексте "C", но если ввести "z" в поиске, то работает нормально - показывает только карточку z?
Vlad
код поиска ng-repeat="char in media.chars | filter: search.name:strict"
Mikhail
Ушел работать, копать некогда, к сожалению, но общая рекомендация: старайтесь по-минимуму использовать фильтры - они запускаются каждый цикл, замедляют приложение (а главная беда ng1, пожалуй - это производительность) и обладают не слишком явным синтаксисом (хотя это уже личные предпочтения). Вместо этого можно при измении поля фильтра запускать функцию в контроллере/сервисе, которая явно отфильтрует media.chars (можно проставить флаги is_hidden и показывать в шаблоне только те, которые ! is_hidden)
Vlad
понял, спасибо
Andrei
Ребят есть breadcrumbs сервис, в котором на $rootScope вешаю обработчик события $on('$routeChangeSuccess'), где потом разбиваю на крошки путь, но событие данное вызывается при смене URL, то есть после перехода по ссылке. Какое событие есть типа $on open или create по аналогии с $destroy, что бы при открытии сработала эта функция? Или я не туда копаю
Andrei
$stateChangeStart для ui-router
Andrei
Можно еще через resolve сделать
Andrei
Спасибо
Vlad
Привет всем, подскажите адрес чата по 2-й версии, раньше вроде была ссылка в описании этого чата.
Vlad
https://telegram.me/angular2
Спасибо большое
Archakov
Люди, подскажите. Я отправлю POST параметры через метод $.post, но почему-то в моем массиве свойство id заменяется на id[0][]
Archakov
Почему так?
Archakov
Archakov
я писал id, потом wid
Archakov
Vlad
а в id что?
Archakov
updateItem([[item.id]], [[$index]])
Archakov
item.id хранит только номер
Archakov
Я решил проблему, спасибо. Подправил заголовок функции
Archakov
и дописал parseInt()
Michail
и дописал parseInt()
Вот она мощщ JS 😁
Serhii
Мощь жс в void(0)
Lupsik Pupsik
ну что посоны
Lupsik Pupsik
https://www.reddit.com/r/webdev/comments/53328a/is_it_just_me_or_angular2_not_intuitive_at_all/
Lupsik Pupsik
>"Sweet Jesus, why the f*** am I even doing this?"
Dreamerinnoise
О, хейтер подъехал
Lupsik Pupsik
О, хейтер подъехал
там целый тред таких "хейтеров"
Дима
Им надо месяцок на C++ пописать
Дима
Сразу сменят своё представление об интуитивности
Vlad
Им надо месяцок на C++ пописать
откуда такое имя, если не секрет?
Dreamerinnoise
Есть ещё мемлекеттендирилмегендиктеринизден
Дима
откуда такое имя, если не секрет?
"Внимание" по казахски. Я просто каждую неделю ник придумываю поинтереснее 🙃
Дима
Vlad
"Внимание" по казахски. Я просто каждую неделю ник придумываю поинтереснее 🙃
пишите сюда, при смене ника, это довольно таки занятно было бы понаблюдать)
Lupsik Pupsik
Им надо месяцок на C++ пописать
Зачем сравнивать си и яваскрипт? У них разные задачи и разное применение
Vlad
кстати, новые проекты на первом ангуляре еще делают?
Lupsik Pupsik
Вообще это очень смешное оправдание неадекватному апи
Vlad
насколько это актуально еще?
Lupsik Pupsik
Типа э вона в вашей амурике копы людей убивают
Anonymous
кстати, новые проекты на первом ангуляре еще делают?
если надо запилить быстро, а знаешь только первый хорошо, то почему бы и нет?
Anonymous
Вообще это очень смешное оправдание неадекватному апи
апи ангуляра понять сложно, но он вполне адекватен
Vlad
если надо запилить быстро, а знаешь только первый хорошо, то почему бы и нет?
но вообще лучше уже на втором делать или первой будет жить параллельно?
Lupsik Pupsik
Короче после того как протух первый ангулар и жквери я понял что чем меньше зависимостей и фреймворков тем лучше
Dreamerinnoise
👏
Anonymous
у кого протух
Anonymous
у кого нет
Lupsik Pupsik
У всех протух
Anonymous
не знаю, мои проекты на первом что веб что на кордове прекрасно себя чувствуют
Lupsik Pupsik
Anonymous
нет, @pimpmyyoba склоняет к реакту
Lupsik Pupsik
И они выполняют задачи как и надо
Anonymous
"псс, парень, не хочешь немного на реакте пописать?"
Dreamerinnoise
>ванила библиотек толсто
Anonymous
Извините, сегодня настроение потроллить)
Anonymous
не понимаю я этих споров, кому на чем нравится тот и пишет.
Lupsik Pupsik
>ванила библиотек толсто
Ну за день я на реакте и сторонних библиотеках переписал админку вчера
Lupsik Pupsik
До этого она была на ng-admin