Концептуальный нестандартный угловой вопрос DateTimePicker - PullRequest
0 голосов
/ 10 декабря 2018

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

Моей первой мыслью было разработать пользовательский компонент, который бы имел текстовый элемент с одним типом ввода и div, который был бы невидимым (этоdiv будет содержать кнопки календаря, часов, отмены и применения).

Когда пользователь фокусируется на вводе, появляется div, затем пользователь выбирает дату и время, а затем нажимает кнопку, чтобы снова применить скрытие div и, наконец, ввод получаетзначения, выбранные пользователем.

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

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

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

Я бы предпочел разработать реализацию, которая бы использовала директиву, так как я мог бы манипулировать вводомсамо значение, и тогда конечный пользователь просто привязывается к свойству значения.Но для моего понимания директивы не могут иметь шаблонов ...

Подскажите, пожалуйста, какое было бы лучшее решение этой концептуальной проблемы?

Спасибо

------------------------------------------------------------------------------- Добавлено 11/12/18

Я сначала взглянул на оба подхода, идля моего понимания они кажутся очень похожими, хотя ни то, ни другое не достигает того, чего я хочу.Я постараюсь объяснить себя лучше.Я создаю новый компонент, который состоит из N HTML-элементов.

Но входной является основным, и я бы хотел, чтобы его можно было стилизовать снаружи, как обычный элемент HTML.<my-component class="form-control">, так как остальная часть компонента - это календарь, который будет выглядеть всегда одинаково, несмотря ни на что.

Еще одна вещь, которую я хотел бы сделать и которая возможна с помощью директивы, - это прямой доступ к свойству value.Сейчас я выполняю это как <my-component [(value)]="date">

Я очень новичок в ангуляторе, поэтому мне жаль, если я упускаю что-то очевидное.

Спасибо

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...