Sergey
Без прокси все прекрасно работает)
У меня только мобильная так, телега периодически присылает новые настройки с проксиками похоже через пуш. Десктоп брошен на произвол, там каждый сам за себя
Oleg
хз, у меня ни то ни другое не работало, поставил проксю и забыл
Artem
всем привет, нигде не могу найти инфу как добавить обязательный атрибут для компонента. require как я полагаю работает только для обязательно родительского компонента. Или я ошибаюсь ?
Sergey
Любой биндинг без ? обязательный
Sergey
Проблема в том что они все nullable
Sergey
Вам это нужно в инициализации самому контролировать
Rem1te
Я думаю человек хочет что бы без передачи определенных параметров не грузился компонент, но ангулярджс так не умеет Вы можете разве что в хуке $postLink обработать и выкинуть ексепшн если что-то не пришло
Artem
ведь в директивах, если не ошибаюсь, require можно применять и к атрибутам.
Sergey
Не пробовал такое, честно говоря. В доке пишут что require ищет controller. Ну и смысл будет примерно одинаковый, разве что require если он так действительно может, будет контролировать правильность написания названия атрибута, но не значение из биндинга.
Dmitry
Dmitry
md-input-container.test mb-select(ng-model="ctrl.selectedGame") mb-option( ng-repeat="game in ctrl.allGames" ) {{game.name}}
Dmitry
что я делаю не так?
Sergey
А allGames это точно массив, а не объект? Ну это единственное чтов голову приходит
Nikolay
что я делаю не так?
а css от материала точно подключены?
Sergey
Да я так понял там репит не итерируется
Sergey
На всякий случай попробуйте в темплейт вывести allGames
Dmitry
Максим
там мне кажется идет двойной репит
Dmitry
если обычным select то все ок
Максим
md-input-container.test mb-select(ng-model="ctrl.selectedGame") mb-option(ctrl.allGames ) {{game.name}} разве не так примерно должно быть?
Максим
там не надо ещё раз репит писать, на сколько я помню
Dmitry
https://material.angularjs.org/latest/demo/select сейчас попробую но вроде надо
Максим
а, это материал .. тогда хз) почему именно их юзаешь?
Sergey
Друзья, а что это за шаблонизатор такой?
Максим
смотри консоль на ошибки... попробуй стандартный их код попробуй
Максим
если работает, то значит где-то ищи косяк в своём коде
Dmitry
там мне кажется идет двойной репит
с рипитом все ок в других местах такие же комментарии где repeat
Dmitry
ок
Dmitry
придется пока значит обычным селектом обойтись
Sergey
pug / jade ?
Ага, понял, спасибо)
Dmitry
а, это материал .. тогда хз) почему именно их юзаешь?
ты бы еще спросил зачем я angularjs юзаю :D
Максим
а зачем angularjs юзать? можно же на html сделать таблицы с 100500 строк) так проще, всего лишь Ctrl+C
Dmitry
нет ну почему не новый ангуляр или реак с вью и тд
Максим
ну каждому своё.. кто-то реакт, кто-то ангулар... тут либо вкус и цвет, либо наследственный проект) чаще всего 2 фактора)
Максим
не могу понять... Failed to instantiate module fbApp due to: Error: [$injector:modulerr] http://errors.angularjs.org/1.6.9/$injector/modulerr?p0=u...) at https://ajax.googleapis.com/ajax/libs/angularjs/1.6.9/angular.min.js:7:76 at https://ajax.googleapis.com/ajax/libs/angularjs/1.6.9/angular.min.js:43:99 at r (https://ajax.googleapis.com/ajax/libs/angularjs/1.6.9/angular.min.js:8:7) at g (https://ajax.googleapis.com/ajax/libs/angularjs/1.6.9/angular.min.js:42:180) at https://ajax.googleapis.com/ajax/libs/angularjs/1.6.9/angular.min.js:42:364 at r (https://ajax.googleapis.com/ajax/libs/angularjs/1.6.9/angular.min.js:8:7) at g (https://ajax.googleapis.com/ajax/libs/angularjs/1.6.9/angular.min.js:42:180) at gb (https://ajax.googleapis.com/ajax/libs/angularjs/1.6.9/angular.min.js:46:250) at c (https://ajax.googleapis.com/ajax/libs/angularjs/1.6.9/angular.min.js:22:19) at Uc (https://ajax.googleapis.com/ajax/libs/angularjs/1.6.9/angular.min.js:22:332
Rem1te
Как вариант неправельно имя модуля в хтмл и в джс
Sergey
Да у меня кажется 90% ошибок выглядят вот так. То модуль вызван до того как он объявлен то ещё хз что. Нг1 для девчонок с яйцами :D
Dima
ребят посоветуйте толковое расширение для дебага, а то ng-inspector и batarang какие-то тугие
Valera
Привет Есть приложение на angularjs, которое используется в нескольких проектах (изменен по факту только внешний вид, немного html структура и ui скрипты. Нужно как-то разделить приложение на ядро, общее для всех проектов и кастомизированные файлы. Как это всё правильно организовать? Может есть готовые решения?
Sergey
Как людей npm портит))
Borya
ов
Ԓ̵̟̻̪̥͍̹̦̼͑̋́̽̎͒̑͆̚͜͜о̶̢̛̖̞̬̥̪͎̖̗̗̝̯̫͈̜́̋͋͆̒̔͊̍̑̄͝р̷̥̠͓̘͎̑̋̚д̶͒́
Привет Есть приложение на angularjs, которое используется в нескольких проектах (изменен по факту только внешний вид, немного html структура и ui скрипты. Нужно как-то разделить приложение на ядро, общее для всех проектов и кастомизированные файлы. Как это всё правильно организовать? Может есть готовые решения?
Все зависит от архитектуры. Если приложение разбито на модули и компоненты, из глобальных стилей только условный normalize и какой-то условный грид - тогда ничего сложного нет в том чтобы отделить все лишнее и оставить авторизацию, базовый роутинг и несколько основных зависимостей для UI и т.д
Valera
Valera
Есть куча vendors библиотек, думал их поместить в ядро, но уже проблема, что на некоторых проектах бутстрап v3, на других v4
Valera
На модули приложение не разбито
Ԓ̵̟̻̪̥͍̹̦̼͑̋́̽̎͒̑͆̚͜͜о̶̢̛̖̞̬̥̪͎̖̗̗̝̯̫͈̜́̋͋͆̒̔͊̍̑̄͝р̷̥̠͓̘͎̑̋̚д̶͒́
UI никогда не должно быть ядром или в ядре
Valera
UI не в ядре, это кастомный код под каждый проект
Ԓ̵̟̻̪̥͍̹̦̼͑̋́̽̎͒̑͆̚͜͜о̶̢̛̖̞̬̥̪͎̖̗̗̝̯̫͈̜́̋͋͆̒̔͊̍̑̄͝р̷̥̠͓̘͎̑̋̚д̶͒́
выноси общий код в npm пакет
хорошая идея, в основном это могут быть сервисы, фабрики, общая бизнес логика так сказать
Ԓ̵̟̻̪̥͍̹̦̼͑̋́̽̎͒̑͆̚͜͜о̶̢̛̖̞̬̥̪͎̖̗̗̝̯̫͈̜́̋͋͆̒̔͊̍̑̄͝р̷̥̠͓̘͎̑̋̚д̶͒́
если шаблоны и стили компонентов по БЭМу так вообще и их можно паковать
Ԓ̵̟̻̪̥͍̹̦̼͑̋́̽̎͒̑͆̚͜͜о̶̢̛̖̞̬̥̪͎̖̗̗̝̯̫͈̜́̋͋͆̒̔͊̍̑̄͝р̷̥̠͓̘͎̑̋̚д̶͒́
Valera
gulp
Ԓ̵̟̻̪̥͍̹̦̼͑̋́̽̎͒̑͆̚͜͜о̶̢̛̖̞̬̥̪͎̖̗̗̝̯̫͈̜́̋͋͆̒̔͊̍̑̄͝р̷̥̠͓̘͎̑̋̚д̶͒́
апгрейд на 6 ангуляр планируется?
Valera
Нужно разделить на 2 репозитория Точнее, сделать один репозиторий под ядро и по репозиторию на каждый проект В каждом хранить только свои файлы Апгрейд в ближайшие пол года точно нет
Valera
Если будет, то скорее всего, всё перепишется с нуля
Sergey
апгрейд на 6 ангуляр планируется?
А есть опыт именно апгрейда? Через ngUpgrade и вот это всё. Чем больше я смотрю на него тем больше он мне кажется способом испортить и старый и новый код
Ԓ̵̟̻̪̥͍̹̦̼͑̋́̽̎͒̑͆̚͜͜о̶̢̛̖̞̬̥̪͎̖̗̗̝̯̫͈̜́̋͋͆̒̔͊̍̑̄͝р̷̥̠͓̘͎̑̋̚д̶͒́
тогда есть два варианта: создать нпм пакет на es6 модулях, для удобного импортирования только нужных частей, а в приложениях использовать условный вебпак для бандлинга, или нпм пакет который предоставляет кучу обычных js файлов которые потом скармливаются gulp'у при сборке
pa[aad
бандл делайте,
Valera
Тут больше вопрос в том, что вынести в ядро, а что оставить в custom
Ԓ̵̟̻̪̥͍̹̦̼͑̋́̽̎͒̑͆̚͜͜о̶̢̛̖̞̬̥̪͎̖̗̗̝̯̫͈̜́̋͋͆̒̔͊̍̑̄͝р̷̥̠͓̘͎̑̋̚д̶͒́
Ԓ̵̟̻̪̥͍̹̦̼͑̋́̽̎͒̑͆̚͜͜о̶̢̛̖̞̬̥̪͎̖̗̗̝̯̫͈̜́̋͋͆̒̔͊̍̑̄͝р̷̥̠͓̘͎̑̋̚д̶͒́
Тут больше вопрос в том, что вынести в ядро, а что оставить в custom
Фабрики и простые компоненты/директивы. Роуты не вынесешь т.к. на них может быть куча ненужных резолвов, иерархия и нейминг может отличаться. Контроллеры не всегда, разве что они для простых компонентов и изменений у них не будет
Valera
Контроллеры не будут меняться, они одинаковые для всех проектов
Valera
Меняется перевод сейчас структура такая: lang/ru.json lang/en.json
pa[aad
Контроллеры не будут меняться, они одинаковые для всех проектов
не нужно контроллеры выносить, вынеси логику работы
Valera
Тут первая проблема Надо сделать какой-то стандартный lang для каждого языка в ядре И возможность перезаписать стандартный lang в custom
Ԓ̵̟̻̪̥͍̹̦̼͑̋́̽̎͒̑͆̚͜͜о̶̢̛̖̞̬̥̪͎̖̗̗̝̯̫͈̜́̋͋͆̒̔͊̍̑̄͝р̷̥̠͓̘͎̑̋̚д̶͒́
попробуй https://github.com/angular-translate/angular-translate
Ԓ̵̟̻̪̥͍̹̦̼͑̋́̽̎͒̑͆̚͜͜о̶̢̛̖̞̬̥̪͎̖̗̗̝̯̫͈̜́̋͋͆̒̔͊̍̑̄͝р̷̥̠͓̘͎̑̋̚д̶͒́
инициализация на стадии config - для каждого приложения следать свой не проблема
Valera
И вторая проблема, что сделать с vendors Там куча библиотек, например для ангуляра определенной версии, которые точно меняться не будут И вроде бутстрапа и jquery, версии которых могут отличаться в каждом проекте (но есть ли смысл их выносить в репозиторий с кастомными файлами, если эта библиотека никогда не изменится в рамках конкретного проекта)
Valera
Нужно сделать дефолтный перевод для каждого языка в ядре. Например, по ключу Login будет получаться значение "Вход".
Valera
И возможность менять что-то в кастомном файле. Например, перезаписать ключ Login, что б было "Войти"
Valera
Грубо говоря, для каждого языка в ядре полный перевод. А в custom перевод только конкретных значений, которые заказчик решил поменять
pa[aad
Нужно сделать дефолтный перевод для каждого языка в ядре. Например, по ключу Login будет получаться значение "Вход".
лучше уже будет сделать отдельный язык для каждого приложения, нужно будет вытянуть общий перевод, сделай для этого функционал
Sergey
если вся бизнес-логика вынесена в сервисы и это все покрыто тестами - тогда апгрейдить не сложно
Ну у меня большая часть логики это реакция на ввод, звучит как давайте перенесём контроллер в сервис) И куча костылей для нг1 они ж никуда не денутся, только костылей уже будет х3