Использование двойной фигурной Vue.js фигурные скобки внутри php string param

#php #vue.js

#php #vue.js

Вопрос:

Итак, я нахожусь в процессе микширования Vue.js , PHP amp; HTML и я столкнулся с небольшой проблемой — у меня есть следующий раздел HTML:

 <button class="task button is-fullwidth is-flex" v-for="task, taskid in list.list">
    <span class="icon">
        <img src="<?= Path::o365("{{task.title}}" . '.svg'); ?>" />
    </span>
    <span class="task__handle">{{task.title}}</span>
</button>
 

Теперь все работает отлично, кроме вызова Vue.js заголовка внутри PHP кода.. У меня есть следующее:

 <img src="<?= Path::o365("{{task.title}}" . '.svg'); ?>" />
 

Возможно ли вызвать двойные фигурные скобки внутри параметра PHP? У меня HTML version ( <span class="task__handle">{{task.title}}</span> ) работает отлично.

Любая помощь приветствуется! Я даже не знаю, возможно ли это, поэтому я буду учиться.

Ответ №1:

Технически вы не можете.

Но если требуется Path::o365() преобразовать имя ресурса в URL, вы можете сделать обходной путь следующим образом:

 <img :src="`<?= Path::o365('${task.title}' . '.svg'); ?>'`" />
 

В конечном итоге это приведет к чему-то вроде этого:

 <img :src="`https://example.com/images/${task.title}.svg`" />
 

Который на самом деле является законным строковым литералом javascript, а также ссылается на переменную task.title

Комментарии:

1. Вау, я этого не знал, но это действительно сработало! Мне нужно будет провести дополнительные исследования по этому вопросу, но при необходимости он использует правильный SVG. Поддержано.