Jump to content

cyklop77

User
  • Posts

    1,770
  • Joined

  • Last visited

  • Days Won

    9

Everything posted by cyklop77

  1. если ты в городе с >=200тыс жителями, то устроиться на IT-галеру вообще не проблема. а дальше всё зависит от тебя. не понимаю в чём предмет нытья. да разработчиков полно, да толковых разработчиков мало. ничего не изменилось после высказывания грефа, всё как всегда смотрю я на современную молодежь и завидую. сейчас в вебе много удобного и высокоуровневого появилось. фреимворков куча, технологий куча, интернет отличный, компьютеры дешёвые... ну и т.д. если есть желание, то можно успешно развиваться
  2. ребята, научите пожалуйста как залить svg-контур. есть один svg-файлик, в котором всего один элемент path. результат выглядит так мне хотелось бы изменить исходный код файла так чтобы область внутри была залита там же цветом, что и контур. svg-файл прикрепляю к этому посту. filter_fill.svg
  3. ох, ребятушки, спасибо за поддержку. через 3 месяца упорной деятельности нашёл отличную работу. по деньгам конечно просел, но оно того стоило. как говорил марк цукерберг "самый большой риск - это вообще не рисковать"
  4. ребята, помогите пожалуйста сделать пропорциональный блок. тут в fiddle есть резиновый красный прямоугольник. я хотел бы чтобы он при любой ширине окна браузера имел отношение сторон 3:2. важно чтобы он был именно div, а не img
  5. ищу работу angular2-разработчика. пример лучшего кода здесь: https://github.com/zlodiak/ng2_answers_web контакты: email: kalinin.sergey.81@gmail.com skype: cyklop771
  6. Подскажите пожалуйста как в angular2 при помощи rxjs через каждые 5 секунд получать данные с сервера. Вот мой код, он работает, но есть проблема. компонент: import { Observable } from 'rxjs/Observable'; import 'rxjs/add/observable/interval'; import 'rxjs/add/operator/switchMap'; private getUserTasks(userId): void { Observable .interval(5000) .switchMap(() => this.tasksService.getUserTasks(userId)) .subscribe( data => { this.userTasks = JSON.parse(data); console.log('userTasks', this.userTasks); } ) }; сервис: import { Injectable } from '@angular/core'; import { HttpClient } from '@angular/common/http'; import { Observable } from 'rxjs/Observable'; import 'rxjs/add/observable/interval'; @Injectable() export class TasksService { constructor(private http: HttpClient) { }; getUserTasks(userId): Observable<any> { return this.http.get('http://127.0.0.1:8000/app_tasks/user_tasks?user_id=' + userId); }; } Проблема в том, что первый запрос отправляется после того как пользователь подождёт 5 секунд, глядя в белый экран. А мне нужно чтобы первый запрос отправлялся сразу после загрузки страницы. Я мог бы повесть индикатор или спиннер, но дело в том, что, возможно, период придётся увеличить до 60 - 120 сек. Всё это время смотреть на индикатор неприятно пользователю
  7. ребята, а не скажете, существуют ли какие-нибудь онлайн-сервисы, которые имитируют простейший бекенд? то есть чтобы, например, самому не поднимать django или что-нибудь подобное и иметь возможность из js-фронтенда записывать и считывать простейшие, небольшие по побъёму структуры данных через REST. и чтобы при этом эти данные хранились бы постоянно
  8. подскажите пожалуйста, возможно ли песочницу типа jsfiddle заставить принимать результат ajax-запроса в виде jsonp? тут я набросал небольшой пример. видно, что он не работает, а в консоли ошибочки. при этом на локальной машине проблемы нет
  9. подскажите пожалуйста, что нужно сделать чтобы получить возможность использовать базу городов от КЛАДР? она выложена в общий доступ, но обратиться через ajax к ней невозможно потому что браузеры не разрешают кроссдоменные запросы когда бэкенд пишешь сам, то сам же и настраиваешь отдающий сервер в соответствии с CORS, но здесь не тот случай. однако, думаю, большинство разработчиков тянут данные из КЛАДР при помощи ajax. и.... я тоже хочу пока только придумал установить в хром расширение. но это временная мера - только для этапа разработки.
  10. ребята, скажите пожалуйста что-нибудь про эту поделку. исходники здесь верстал только по браузеры мобильных устройств. бекенда нет поэтому для хранения информации используется localStorage. вот список паролей для входа: ADMINS: user2 / qwerty2 user4 / qwerty4 USERS: user1 / qwerty1 user3 / qwerty3 user5 / qwerty5 user6 / qwerty6 user7 / qwerty7 хотелось бы услышать что-нибудь по js, но вряд ли кто-нибудь будет копаться. поэтому пишите общее впечатление, юзабилити и т.п.
  11. нееееет. жизнь это боль, а рутины можно избежать)
  12. ну я думаю(вижу), что на рынке труда моего города творится то же самое что и на рынках труда других городов. то есть компании постоянно ищут разработчиков, а те постоянно в жутком дефиците на собеседование сходил в одну контору(вообще, у нас трудно отпрашиваться потому что постоянный дедлайн). сложно там, но прикинул, что если буду 10 часов(8ч рабочий день + 1 обед + 1 дорога) тратить не на сидение в офисе и перелопачивание гкода, а на обучение, то, пожалуй, осилю. как потом вспомнил, спрашивали то, что не выходит за пределы учебника по js ильи кантора. страшно другое, что собеседование это мелочь в общем, реальные задачи, которые придётся решать на работе никак не прощупаешь заранее это да. но в любой компании творческие задания уходит в сильным разработчикам. я сейчас чувствую силы углубиться в js, проблема во времени. поэтому всё же решил рискнуть
  13. помогите пожалуйста советом и направьте в правильное русло так сказать на angular2 сделал небольшой сайт, который состоит из двух страничек: расписание и список людей. архитектурно он состоит из главного компонента и двух компонентов страничек сайт двуязычный. для этого я в главный компонент поместил стандартный material-переключатель и связал его с глобальным сервисом. в этом глобальном сервисе содержатся переменные, которые должны быть видны из любой части сайта. в частности там хранится признак установленного в настоящий момент языка переключатель в шаблоне главного компонента: <mat-slide-toggle class="toggler-lang" (click)="toggleLang()" [(ngModel)]="isEnLang"></mat-slide-toggle> сервис глобальных переменных: private isEnLang = new BehaviorSubject(false); constructor() { } getLangState(): Observable<boolean> { console.log('this.isEnLang', this.isEnLang); return this.isEnLang; }; setLangState(state): void { console.log('set isEnLang', state); this.isEnLang.next(state); }; функционал главного компонента для смены языка: private isEnLang: boolean; constructor(private globalVarsService: GlobalVarsService) {}; ngOnInit() { this.checkLang(); }; private toggleLang() { this.isEnLang = !this.isEnLang; this.globalVarsService.setLangState(this.isEnLang); }; private checkLang(): void { this.globalVarsService.getLangState().subscribe(data => setTimeout(() => { console.log('subscribe', data); this.isEnLang = data; }, 0)); }; проблема в том, что мне приходится в каждом компоненте, в котором используется переключения языка подключать этот "глобальный" сервис и настраивать подписку получения изменения "глобальной" переменной isEnLang. и что самое страшное - этот код дублируется в каждом компоненте. сейчас сайт состоит из двух страничек и такое дублирование кода не страшно, но по мере роста сайта будет очевидно, что решение хоть и рабочее, но неверное подскажите пожалуйста более практичное решение даже если остальные решения более неудобные, то всё равно расскажите про них. всегда лучше знать несколько вариантов решения проблемы GITHUB
  14. Ну так в этом и причина, что они так неплохо вместе уживаются)
  15. во-первых, насколько я помню, 2 независимые группы ведут свою версию спецификации. это w3c консорциум и рабочая группа html5. и не имеет значения какая из них старше
  16. ребята, хочу посоветоваться по поводу ситуации. потому что знаю за собой особенность принимать дикие решения, о которых часто потом жалею. одна из причин в том, что из-за моей асоциальности посоветоваться обычно не с кем сейчас работаю в it-компании, деятельность которой, мне не интересна( скучная и рутинная потому что). есть большое желание уволиться, но новое место работы пока не подыскал. но при этом по меркам нашего города зарплата очень неплохая. проблема в том, что я понимаю, что пока буду изо-дня в день заниматься рутиной, то из-за нехватки времени не смогу глубоко изучить интересную мне технологию. но с другой стороны если я увольняюсь, то в ближайшие 2-3 месяца я совершенно точно буду безработным во-первых потому что буду заниматься самообучением, во-вторых потому что сейчас у меня мало знаний для немедленного поиска новой работы была ли у кого-нибудь подобная ситуация? расскажите пожалуйста свой опыт. и вообще какие мысли у опытных разработчиков по-поводу моей ситуации, очень интересно узнать? денежная подушка безопасности на ближайшие месяцы есть. но всё равно страшно такие судьбоносные решения принимать. потому что самообучение может не задаться(я довольно слабый разработчик), да и поиск работы дело не быстрое. но с другой стороны понимаю, что продолжать работать на настоящем месте это самый верный путь в никуда. это причина моих сомнений
  17. здравая мысль. всё слишком быстро меняется в вебе, многие ранние закладки точно не нужны. только я бы на всякий случай перед обнулением архив вкладок сохранил где -нибудь в /home
  18. ребята, подскажите пожалуйста правильно ли я понимаю как сделать AOT-компиляцию angular2-проекта первый способ это перед помещением файлов проекта на хостинг использовать команду node_modules/.bin/ngc -p tsconfig-aot.json и после этого файлы из каталога src скопировать на хостинг но второй, более простой, способ это просто установить пакет angular-cli и запустить команду ng build. в результате создастся каталог build, который остаётся только скопировать на хостинг
  19. подскажите пожалуйста сервис, при помощи которого можно реализовать последовательный выбор адреса. например, в вконтакте когда ищешь человека, предлагается в первом селекте выбрать страну, во втором селекте выбрать город и т.д. мне нужно бы знать какой сервис использовать для этой цели. желательно получать результат выборки в формате json на хабре я находил такую статью . но в ней немного не то, что мне нужно. в ней адрес выбирается в одном селекте при помощи автокомплита и вообще хорошо бы знать как называется такой способ выбора чтобы стало понятно по каким словам гуглить
  20. ребята, помогите пожалуйста исправить кривыми руками установленный компонент из angular 2 material я пытался запустить компонент диалога в самой простой форме. вот что у меня получилось. проблема в том, что после клика по кнопке диалог открывается шде тосбоку экрана, почти за его пределами. кроме того консоль выводит следующее сообщение об ошибке: app.module.ts: import { BrowserModule } from '@angular/platform-browser'; import { NgModule } from '@angular/core'; import { BrowserAnimationsModule } from '@angular/platform-browser/animations'; import { MdButtonModule, MdDialogModule } from '@angular/material'; import { AppComponent } from './app.component'; import { ConvDialogComponent } from './conv-dialog/conv-dialog.component'; @NgModule({ declarations: [ AppComponent, ConvDialogComponent ], imports: [ MdDialogModule, BrowserAnimationsModule, MdButtonModule, BrowserModule ], providers: [], bootstrap: [AppComponent] }) export class AppModule { } app.component.ts: import { Component } from '@angular/core'; import { MdDialog } from '@angular/material'; import { ConvDialogComponent } from './conv-dialog/conv-dialog.component'; @Component({ selector: 'app-root', templateUrl: './app.component.html', styleUrls: ['./app.component.css'] }) export class AppComponent { selectedOption: string; constructor(public dialog: MdDialog) {}; private openMoneyConverter(): void { console.log(111); this.dialog.open(ConvDialogComponent); }; } conv-dialog.component.ts: import { Component, OnInit } from '@angular/core'; @Component({ selector: 'app-conv-dialog', templateUrl: './conv-dialog.component.html', styleUrls: ['./conv-dialog.component.css'] }) export class ConvDialogComponent implements OnInit { constructor() { } ngOnInit() { } }
  21. Помогите пожалуйста установить дефолтное значение в datepicker ng material 2 в моём случае сам датапикер связан с моделью так: <md-input-container> <input mdInput [mdDatepicker]="picker" placeholder="Choose a date" [(ngModel)]="modelDateBegin"> <button mdSuffix [mdDatepickerToggle]="picker"></button> </md-input-container> <md-datepicker #picker></md-datepicker> В компоненте устанавливается значение модели так: export class DatepickerOverviewExample { private modelDateBegin = '02.07.2017'; } В результате браузер показывает датепикер, в котором предустановлено значение: "07.02.2017". Это явно не то что было установлено в компоненте Живой пример здесь: PLUNKER PS: При этом если на этой же странице использовать второй датепикер, то описанным выше способом значение в нём вообще не устанавливается
  22. помогите пожалуйста получить ответ от ajax-запроса в angular2 вот код сервиса: import { Injectable } from '@angular/core'; import { Http } from '@angular/http'; import { Observable } from 'rxjs/Observable'; @Injectable() export class RecordsService { constructor(private http: Http){ } getRecords(dateBeginUnix, dateEndUnix): Observable<any> { console.log(dateBeginUnix, dateEndUnix); let result = this.http.get('http://127.0.0.1:8000/days/' + dateBeginUnix + '/' + dateEndUnix); console.log('result', result); return result; } } вот код компонента(сокращённый): export class PanelComponent implements OnInit { constructor(private recordsService: RecordsService) { } private modelDateBegin: Object; private modelDateEnd: Object; private records: Object; private data: Object; displayStatistic() { this.recordsService .getRecords(this.modelDateBegin['epoc'], this.modelDateBegin['epoc']) .subscribe(data => this.records = data.json()); } } в сервис передаются 2 переменные: this.modelDateBegin['epoc'], this.modelDateBegin['epoc'] в них содержатся временные метки в юникс-формате. на основе этих меток бекенд выдаёт результат в виде json. проблема только в том, что в функции subscribe не происходит получение и присваивание полученного результата. соответственно я не могу результат отправить в шаблон для вывода при этом в консоли нет сообщений об ошибках. а выводится следующее: result Observable {_isScalar: false} ps: если в компоненте я заменяю строку: .subscribe(data => this.records = data.json()); на такую: .subscribe(data => this.records = data); , то в this.records следующее: содержится следующее: Response with status: 200 OK for URL: http://127.0.0.1:8000/days/1498856400/1498856400
  23. ну это да. и его я тоже уже скопировал на первое время. но хотелось бы иметь возможность менять толщину границы
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. See more about our Guidelines and Privacy Policy