true ? ()=>{alert("true");} : alert("false");
Здравствуйте, играясь с v-bind я обнаружыл возможность применения тернарного оператора к примеру
v-bind:style="page == 2 ? { opacity: 1 } : { opacity: 0 }" Но оказалось что кроме присвоения opacity мне былобы удобно выполнить функцыю из methods:{}, Но если я использою просто тернарный оператор с вызовом функции <script>true ? alert("true") : alert("false");</script>все работает но возможно ли тыкнуть туда ище и лямбда-функцыю тыпа так (не работает) <script>true ? ()=>{alert("true1");alert("true2");} : alert("false");</script> В общем я надеюсь получить чтото типа v-bind:style="page == 2 ? ()=>{alert("true"); {opacity:1}} : { opacity: 0 }" Возможно ли ето |
Тетрарный оператор имеет вид
выражение? выражение1 : выражение 2 Выражение 1 и выражение2 должны вычислять какое то значение. Т.е исполняться. Исполнением этого выражения ()=>{alert("true"); {opacity:1}} является создание новой функции. Только создание, а не ее вызов Если надо выполнить какие то действия и потом вернуть значение, надо использовать оператор , Попробуйте так v-bind:style="page == 2 ? (alert("true"), {opacity:1}) : { opacity: 0 }" |
Часовой пояс GMT +3, время: 08:31. |