Описание тега safe-navigation-operator

7 ответов

Безопасно присвойте значение вложенному хешу, используя Hash#dig или оператор Lonely (&.)

h = { data: { user: { value: "John Doe" } } } Чтобы присвоить значение вложенному хешу, мы можем использовать h[:data][:user][:value] = "Bob" Однако, если какая-либо часть в середине отсутствует, это вызовет ошибку. Что-то вроде h.dig(:data, :user, …
05 янв '16 в 20:16
3 ответа

Безопасный оператор навигации (&.) Для нуля

В Ruby 2.3 вводится оператор безопасной навигации (&.), он же одинокий оператор, поведение на nil объект кажется странным. nil.nil? # => true nil&.nil? # => nil Это предназначено для того, чтобы вести себя так? Или какой-то крайний слу…
04 янв '16 в 00:15
0 ответов

Angular2+ безопасный оператор навигации?

Я использовал angular2+ в течение некоторого времени, и я нашел "оператор безопасной навигации" очень полезным синтаксисом, но теперь у меня есть вопрос, могу ли я написать универсальный сервис или sth для обработки "нулевой" вещи вместо записи "? "…
22 ответа

Есть ли в javascript оператор с нулевым слиянием (Элвис) или оператор безопасной навигации?

Я объясню на примере: Элвис Оператор (?:) "Оператор Элвиса" является сокращением троичного оператора Java. Один из примеров того, где это удобно, - это возвращение значения "разумного значения по умолчанию", если выражение принимает значение false и…
2 ответа

Ruby: оператор безопасной навигации, неопределенный метод `call`

Я пытаюсь сравнить числовой литерал с возвращаемым значением функции, которая может вернуть nil или числовой. Учти это: def unreliable [nil, 42].sample end unreliable > 10 Это будет взрываться в 50% случаев с NoMethodError: undefined method '>…
20 апр '17 в 16:28
4 ответа

Есть ли что-то вроде оператора безопасной навигации, которое можно использовать в массивах?

Я использовал Safe Navigation Operator for Objects для загрузки асинхронных вызовов, и это довольно удивительно. Я думал, что смогу воспроизвести то же самое для массивов, но в моем коде Angular отобразится ошибка синтаксического анализа шаблона. я …
1 ответ

Почему в Ruby используется собственный синтаксис оператора безопасной навигации?

В Ruby 2.3.0 введен синтаксис безопасной навигации, который упрощает обработку цепочек вызовов метода с помощью nil, вводя новый оператор, который вызывает метод, только если значение предыдущего оператора не равно nil. Эта функция уже существует, н…
1 ответ

Передача целых данных с использованием безопасной навигации в Angular

Я передаю проект (данные) для отображения определенного представления. Это работает, однако, когда я обновляю страницу, страница уничтожает страницу. Этот div работает <p class="admin">{{ project?.name }}</p>, Однако ниже кодов, выдает о…
2 ответа

Оператор безопасной навигации с аксессором свойства скобки

Я столкнулся с случаем, когда я не могу использовать точечную запись для доступа к свойству, потому что имя свойства содержит точку. У меня есть объект под названием translations чьи свойства содержат переводы строк, например Tooltip.O2 Свойство сод…
2 ответа

Рубокоп, безопасная навигация и отрицание

У меня есть такие конструкции, на которые Рубокоп жалуется, что я пытаюсь успокоить unless foo && !foo.empty? ... (элемент существует и не пуст) а также bar && !bar.positive? (пункт существует и не является положительным) В обоих слу…
22 сен '17 в 12:36
2 ответа

Что такое pre-Ruby2.3 эквивалентный оператору безопасной навигации (`&.`)?

Ответы на каждый вопрос, который я могу найти ( Q1, Q2) относительно нового оператора безопасной навигации в Ruby (&.) ошибочно заявлять, что obj&.foo эквивалентно obj && obj.foo, Легко показать, что эта эквивалентность неверна: obj …
1 ответ

Безопасный оператор навигации по хешу со строковыми ключами

У меня проблема: data = { 'str_key' => ['string1', 'string2'] } # @param [Hash] data - hash with String key # @return [boolean] def some_logic_test?(data) data&.<what_to_do_with_string_key?>.include?('string1') end Как я могу использова…
13 фев '19 в 09:47
2 ответа

Доступ к Observable в шаблоне без использования оператора безопасной навигации и асинхронного конвейера каждый раз

Я новичок в angular и немного борюсь с rxjs и всеми асинхронными вещами. Некоторый контекст Предположим, у вас есть веб-сайт, например, Facebook с профилями. Вы можете перейти к профилю, перейдя к website.com/profiles/profileUrl, Равным образом, наж…
1 ответ

Исправление NilCheck на операторе безопасной навигации (&.)

Этот простой метод в классе просто запустить status метод с использованием оператора безопасной навигации. def current_status account&.status end Но попробуйте сообщить об этом предупреждении: MyClass#current_status performs a nil-check [https:/…
12 янв '17 в 10:46
1 ответ

Есть ли причина использовать оператор безопасной навигации в конструкторе?

Мой друг прислал мне следующий код: def pass = new File("password_file.txt")?.text ?: "pass" Есть ли причина использовать ?. оператор после конструктора? Насколько я понимаю, конструктор может либо вернуть новый объект, либо выдать исключение, поэто…
2 ответа

Почему нуль-условный оператор меняет обычный доступ к свойству?

Я запутался в том, как нуль-условный оператор связан с обычным доступом к свойству. Возьмите эти два примера: a?.b.c (a?.b).c Я ожидаю, что они будут эквивалентны: во-первых, значение a?.b оценивается, то result.c оценивается. Таким образом, если a …
0 ответов

У оператора безопасной навигации есть недостатки по производительности в Angular 2+

Известно, что сначала ngOnChanges срабатывает до инициализации привязок. Поэтому обычно добавлять операторы безопасной навигации в выражения. @Component({ changeDetection: ChangeDetectionStrategy.OnPush, selector: 'some-component', templateUrl: '&lt…
0 ответов

Как связать безопасный навигационный оператор?

Я получил ошибку Cannot read property 'Topic Guide' of undefined at Object.eval [as updateRenderer] Я просто хочу связать оператора безопасной навигации с этой строкой. {{ InternalLinks['Topic Guide'] }}
07 авг '19 в 09:44
1 ответ

Зачем мне нужен оператор безопасной навигации (Элвис), если я инициализирую объект в Angular

Angular 8, Django 3. Я показываю объект Restaurant в виду RestaurantView. ВRestaurantView получает Restaurant на ngOnInit метод: restaurant: Restaurant id: string getrestaurantdetail(id):void { this.restaurantservice.restaurantdetail(id).subscribe(r…
27 янв '20 в 21:19
1 ответ

Где мне использовать безопасную навигацию (оператор Элвиса, "?") В Angular?

Без сомнения, мы используем безопасную навигацию при интерполяции строк ({{}}) для безопасной навигации по значениям во вложенном объекте с проверкой значений NULL или undefined. У меня вопрос, можно ли использовать безопасную навигацию также для: n…
28 фев '20 в 10:37