Я думаю, это действительно зависит от того, насколько «нативным» вы хотите, чтобы пользовательский интерфейс был.
Событие (tap)
поступает из библиотеки Hammer.js. Если вы посмотрите на ссылку, вы увидите требования, которые должны быть выполнены, чтобы событие касания сработало.
Первое требование, о котором следует помнить, — это параметр time со значением по умолчанию 250 мс. Это означает, что если нажатие превышает 250 мс, событие не сработает.
Второе требование, о котором следует помнить, — это параметр threshold со значением по умолчанию 2 (не уверен, что это за единица измерения, возможно, пиксели). Это означает, что если движение прессы больше 2, событие не сработает. Например. двигая пальцем в направлении слева направо над экраном, а затем нажимая элемент во время этого движения, событие может не срабатывать в зависимости от скорости движения.
Однако
Событие (click)
по-прежнему будет срабатывать в обоих случаях, на которые я только что указал, при условии, что когда нажатие будет отпущено, оно все еще находится внутри целевого элемента.
В начале причина, по которой я сказал «это действительно зависит», основана на том, как другие приложения обрабатывают эти сценарии (каждое приложение потенциально может отличаться, и оно также может отличаться в зависимости от результата варианта использования).
Насколько мне известно, кнопки в приложениях для Android, которые я проверял (с визуальным результатом, например, с навигацией или всплывающими сообщениями), работают так же, как событие (click)
, предоставляемое Angular.
Я не могу комментировать, как работают приложения IOS, используя те же принципы, которые я не тестировал.
Я не имею в виду, что в каждом случае использования следует использовать (click)
вместо (tap)
, но постарайтесь принять во внимание, как ведут себя другие нативные приложения, и решить, какое из них наиболее подходит.
person
Will.Harris
schedule
22.09.2016