/ / AngularJS: Виклик функції в умовної перевірки потрійного оператора - javascript, angularjs, ternary-operator

AngularJS: виклик функції в умовах трійкового оператора conditional check - javascript, angularjs, трійковий оператор

Мій файл HAML:

%pipes-autocomplete{:model =>"filter.value",:option => "validate_option(filter)" ? "dependant(filter)" : "filter.option"}

Мій сценарій кави:

  $scope.validate_option =(filter)->
console.log "called validate_option"
if filter.hasOwnProperty("option") && filter.option.indexOf("dependant") > -1
return true
else
return false
$scope.dependant =(cal)->
return "choosed"

У потрійному операторі я намагаюся викликати функцію validate_option, визначену в моєму кутовому контролері. Але функція не викликається. Може хтось допоможе мені з цією проблемою.

Відповіді:

2 для відповіді № 1

Коли ви поставите це питання, потрійний оператор розгляне рядок "validate_option(filter)" бути true (лише тому, що він не порожній).

Замість цього покладіть потрійного оператора всередині рядка:

"validate_option(filter) ? dependant(filter) : filter.option"

Таким чином ви відкладаєте виконання потрійного оператора на те, коли обчислюється рядок.