Извините за плохое название, я действительно не знаю, как сформулировать свой вопрос.
Приведенный ниже код - небольшая часть того, что я делаю, чтобы автоматизировать генерацию кнопок в сочетании с событием щелчка для игры.
Я пытаюсь передать функцию modal.load()
(которая принимает ассоциативный массив в качестве аргумента) в виде строки для кнопки "Look"
. Ну, передача функций работает (это не предусмотрено кодом), НО
Как видите, каждое свойство actions[0].script
возвращает undefined
, как будто this
не передано ..
Скажите, если вам нужно что-то еще, чтобы понять код.
actions = [{
name: "Look",
modal_color: 'salmon',
modal_img: '',
modal_title: 'This is a title',
modal_text: 'This is text',
script: `modal.load({'img': '${this.modal_img}', 'color': '${this.modal_color}', 'title': '${this.modal_color}', 'txt': '${this.modal_text}'});`,
},
{
name: "Walk",
script: "console.info('Other type of script')"
}
]
console.log(actions[0].script)
РЕДАКТИРОВАТЬ: шаблон строки для ясности