Перейти к публикации
  • Сейчас на странице   Всего пользователей: 0   (0 пользователей, 0 гостей)

Rooster

Программирование, т. 7

  

536 пользователей проголосовало

У вас нет прав на голосование в этом опросе, или на просмотр результатов опроса. Пожалуйста, войдите или зарегистрируйтесь для голосования в опросе.

Рекомендованные сообщения

то что она продолжает завозить хоть что-то это уже неплохо


Торжество разума в том, чтобы уживаться с теми, у кого этого разума нет. Вольтер.
Чтобы хорошо высыпаться, нужно спать 8 часов в день. И еще столько же ночью.

Поделиться сообщением


Ссылка на сообщение

Техподдержка гугла продолжает завозить рофлов

 

Переписка на данный момент:

- мы удалили ваше расширение потому что online gambling

- что??? подробнее можно?

- мы удалили ваше расширение потому что нет скриншотов (которые, блять, не обязательны при создании)

- добавил скриншоты, опубликовал снова

- мы удалили ваше расширение потому что online gambling

- ???

 

 

:prayshit:

Почему они считают твое разрешение за онлайновые азартные игры?


 

Жиза для любопытных

Чекнул = пидор

 

Поделиться сообщением


Ссылка на сообщение

@@Дэфрэл это че за сексизм на хекслете я непонел??????

 

Fr3tuWU.png

Почему бы не вернуть "no" вместо null  :megaffuu: или пустую строку или что там по логике надо

Поделиться сообщением


Ссылка на сообщение

const d = (age, sex) =>

{
    if (age < 18)
  return null;
  
    return (sex = sex === 'male' ? 'yes':
              sex === 'female' ? 'no': 'incorrect value'); 
}
 
А почему проверку на выход раньше не делать? Чтобы изберажть этой лестницы?

Saying that Java is nice because it works on all OS's is like saying that anal sex is nice because it works on all genders.
 

Поделиться сообщением


Ссылка на сообщение

monkas


Russia.png.ea080e101222d708d08842dae4ccc684.png USA.png.9b863586cd992fb91bf92ed1de03e4cc.png Israel.png.f27d10a4455f05cd161a8c2c52b8b5e1.png

Поделиться сообщением


Ссылка на сообщение
(изменено)

твои тернарки читать труднее)


Изменено пользователем `KV

DB: click

Поделиться сообщением


Ссылка на сообщение

Yo dawg, I heard you like ternaries...


Поделиться сообщением


Ссылка на сообщение

щас бы 2 пола проверять в 2к!9

DDamager понравилось это

Торжество разума в том, чтобы уживаться с теми, у кого этого разума нет. Вольтер.
Чтобы хорошо высыпаться, нужно спать 8 часов в день. И еще столько же ночью.

Поделиться сообщением


Ссылка на сообщение

Дело не в этой тернарке. Вопрос был в другом, почему нельзя проверку на выход сделать до, а уже после код. Измени. Тернарную операцию на if block. Суть вопроса не меняется.


Saying that Java is nice because it works on all OS's is like saying that anal sex is nice because it works on all genders.
 

Поделиться сообщением


Ссылка на сообщение

monkas


Russia.png.ea080e101222d708d08842dae4ccc684.png USA.png.9b863586cd992fb91bf92ed1de03e4cc.png Israel.png.f27d10a4455f05cd161a8c2c52b8b5e1.png

Поделиться сообщением


Ссылка на сообщение

по-моему это из урока про гарды, и к этому дальше как раз подводится


Поделиться сообщением


Ссылка на сообщение

подскажите скрипт на вин10 для командной строки, установить браузер по дефолту?

хочу Едж сделать, а он заглючит и не показывается там где ставить дефолт браузер в винде

переустанавливать влом да и много уже закешировал паролей и закладок


Tony and Friends - моя компания по бустингу в разных онлайн играх. 3-20 баксов в час в зависимости от скила и заказа.

кто лизал клитор миллионам девчонок в дрожащих лучах заката, просыпался с красным лицом и снова лизал клитор заре, и светил своей задницей возле сараев и голый купался в пруду.(с)
пруф что я олдскул - funkyimg.com/i/2QixB.png | акки на пд начиная с самого первого - DestRuBat0r, KlonD90(друг дал погонять), Sweet_Melony, YYF, Zenit4ik! и другие.   https://allmylinks.com/quadrotonyda

Поделиться сообщением


Ссылка на сообщение
(изменено)

не ставятся дефолтный программы через командную строку обычно

 

идёшь в настйроки эджа и ищешь там где заставить его прописать себя дефолтным и пробуешь чето с этим сделать

обычно браузеры довольно хороши с надоеданием этим дерьмом


Изменено пользователем TheDeadSkin

Поделиться сообщением


Ссылка на сообщение

не ставятся дефолтный программы через командную строку обычно

 

идёшь в настйроки эджа и ищешь там где заставить его прописать себя дефолтным и пробуешь чето с этим сделать

обычно браузеры довольно хороши с надоеданием этим дерьмом

там в настройках винды есть программы по умолчанию - оттуда выбирается браузер и все


:buba:

ни мало ни много, а много и мало

Поделиться сообщением


Ссылка на сообщение

Так, поковырялся пару недель во фронте. По итогу на меня свалились 5 разных апликейшенов по 10-15 экранов каждый. Написаны на разных версиях ангулара (4 и 5) и на разных подходах: часть собирается gulp-ом, часть вебпаком, часть на ангулар-кли. Со стейтами ваще каша, кто-то через сервисы, кто-то какие-то самодёлки через *Behaviour делал (какой-то видимо древний паттерн).

 

А теперь к вопросам. Встала задача продуктизации, а следовательно нужны е2е тесты + юнит тесты + локализации, авторизации и т.д. И я начал пилить всё это дело в качестве скретч-проекта на ангулар-кли. Для е2е тестов написал сервак на экспрессе и замокал все запросы/ответы, с кодами ошибок, и т.д. Ну собственно юнит тесты обычные моки, в качестве стейт-менеджера взял ng2-redux, а логин-страницу, i18n, auth и прочие вещи вынес в корневой модуль, а основной апп как чилдрен с canActivate. Понёс всё это САМОМУ ГЛАВНОМУ и он начал нос воротить что всё не так, всё не этак. Собственно по пунктам:

1) Логин пейдж + организация проекта в целом:

Он предлагает делать следующим образом:

<div
    class="app__page"
    *ngIf="_isAuthenticated || debug; else login
">
    App component code
</div>

<ng-template #login>
    <simple-login-page>
        <simple-login-form [errorText]="_errorText"
                              [isLoading]="_isLoading"
                              (onFormSubmit)="_onFormSubmit($event)">
        </simple-login-form>
    </simple-login-page>
</ng-template>

Типа в рутовый компонент вставлять сразу шаблон, который проверяет авторизован или нет, и выдавать логин пейдж. Осложняется тем, что наши аппликейшены выдаются под разные окружения и иногда нужна доменная авторизация (а значит там будет не simple-login-form), а иногда мультитенантная, а значит там будет <tenant-login-page/> и он говорит: ну будете под каждый способ свою ветку относить.

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

Я же предлагал делать так:

const routes: Routes = [
    {
        path: "",
        redirectTo: "login",
        pathMatch: "full"
    },
    {
        path: "login",
        component: SimpleLoginPageComponent //Вот это можно вынести на уровне определения environment и если чо подменять на DomainLoginPageComponent или на TenantLoginPageComponent 
    },
    {
        path: "app",
        loadChildren: "../app/app.module#MainApplicationModule",
        canActivate: AuthGuard,
        data: {
            state: "lazy"
        }
    },
    {
        path: "**",
        component: PageNotFoundComponent
    }
];

Я же хотел это вынести на уровне повыше. Сделать базовый слой, в котором всего пару раутов, а основное приложение скрыто в чилдах, в виде лейзи модуля. Это к тому же ускоряло загрузку стартового экрана в десятки раз. В среднем приложение грузилось 10 секунд, простой же логин пейдж без всей требухи мгновенно.

2) ng2-redux vs ngrx vs Services

Тут он сказал что не хочет, чтобы мы пользовались редуксом и либо использовать ngrx, либо просто в сервисах хранить состояния. По мне так выбор пал на ng2-redux, из-за огромного комьюнити самого редакса + кучи тулов. Ну и к тому же редакс совместим с ngrx, а обратной совместимости нет. Собственно один из аппликейшенов уже перевели, там чуваки ссутся от восторга (2 джуна и 1 регуляр)

3) е2е тесты и юнит тестирования:

Его предложение было сделать обвязку поверх HttpClient-а и внутри проверять: if(env.DEV), то подменять все запросы с суффиксом *.json и хранить ответы в джейсон файлах, я его спросил как в таком случае эмулировать всякие 400/401/403/500 ответы, его ответом была тишина, типа НУ ЭТОВО И НИ НУЖНА. При моём подходе же это делается легчайше, ибо у тебя контроль за ответами на стороне node.js и expres сервера. Собственно в той моей стартовой компоненте мы всё замокали буквально за день и ваще перестали от бэкэнда зависеть. Чисто читаем их спеку по ресту и себе ответы перетаскиваем, ну там нанологику допиливаем.

 

Возможно у меня просто какое-то шапочное понимание того, как нужно писать фронтэнды и я не понимю какой-то глубины :trollface:  А то там у чувака ~10 лет опыта фронтэнда :palevo:

Поделиться сообщением


Ссылка на сообщение

там в настройках винды есть программы по умолчанию - оттуда выбирается браузер и все

он заглючит и не показывается там где ставить дефолт браузер в винде

всё было бы так просто если бы не было так сложно :nate:

Поделиться сообщением


Ссылка на сообщение
(изменено)
дел, разобрался


Изменено пользователем Zenit4ik!

Tony and Friends - моя компания по бустингу в разных онлайн играх. 3-20 баксов в час в зависимости от скила и заказа.

кто лизал клитор миллионам девчонок в дрожащих лучах заката, просыпался с красным лицом и снова лизал клитор заре, и светил своей задницей возле сараев и голый купался в пруду.(с)
пруф что я олдскул - funkyimg.com/i/2QixB.png | акки на пд начиная с самого первого - DestRuBat0r, KlonD90(друг дал погонять), Sweet_Melony, YYF, Zenit4ik! и другие.   https://allmylinks.com/quadrotonyda

Поделиться сообщением


Ссылка на сообщение
(изменено)

Хз как там чо с логином и роутером в ангуляре, но у нас все довольно таки просто. Есть компонент Auth почти на самом верху аппы (выше только глобальный Router и Apollo), внутри него в children сама аппа со всеми саб-путями. Компонент инициализируется - идет авторизация (если токен на клиенте имеется). Если все ок, то юзер сразу видит аппу. Если не ок или токена нет, то показывается <AuthView /> со своими наворотами (формы для логина, сбросы паролей и так далее). То есть AuthView показывается вместо Children. Через секунду после иниализации Auth компонента, мы стартуем простой скрипт, который подгружает компоненты основной аппы, которые будут доступны после авторизации. Это полезно дабы юзер не сидел с легковесной страницей логина забивая данные, а потом дрочил бибу пока все остальное грузится после авторизации. Плюс у нас там же имеются дополнительные пути, которые должны работать для неавторизованных юзеров (принятие инвайта, всякие там TOS/Privacy Policy и прочее).

 

В твоем случае можно на основе некоторых правил давать разные страницы логина, если юзер не авторизован.

 

У нас вот так например выглядит render() в Auth:

l8qh8Y3vQTurfJ2_b9zucQ.png


Изменено пользователем suez

userbar-53933.png

http://codepen.io/suez/ - they see me bydlocoding, they hatin.

Поделиться сообщением


Ссылка на сообщение

Так парни, планирую к осени свалить из рашки, можете дать профессиональных советов по иностранным собесам, и вообще на что обратить внимание при подготовке к съебу?

Поделиться сообщением


Ссылка на сообщение
Гость
Эта тема закрыта для публикации сообщений.

×
×
  • Создать...