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, время: 06:10. |