Как получить доступ к пользовательским функциям JavaScript через консоль браузера в Rails 6
Для отладки javascript-части веб-приложения на Rails 6 (версия 6.0.0.rc1) я хочу использовать свои пользовательские функции javascript также в консоли Chrome (он же Inspect).
Когда я использовал только статические HTML-файлы для создания веб-сайта (в отличие от использования веб-фреймворка, такого как Rails на данный момент), вы просто встраивали JS-файл в DOM, как это
<!-- custom JS -->
<script src="js/custom.js"></script>
и может мгновенно получить доступ и выполнить все пользовательские функции, которые были размещены в этом файле.
Справочная информация: файл JS размещен в правильном каталоге rails 6, как описано в этой статье: Как требовать пользовательские файлы JS в Rails 6
Примечание. Приложение rails 6 также уже использует файл JS, поскольку браузер отображает сообщение журнала консоли.
Вот полное содержание файла JS:
// app/javascript/packs/custom.js
console.log("loaded custom.js successfully")
function sayHello () {
console.log("Hello good Sir or Madam!")
}
Ожидание: я ожидаю, чтобы открыть консоль браузера (Chrome) и иметь возможность использовать функцию sayHello() в консоли.
Однако, когда я это делаю, в консоли появляется сообщение об ошибке:
Uncaught ReferenceError: sayHello is not defined
1 ответ
Попробуйте что-нибудь вроде
sayHello = ()=>{
console.log("Hello good Sir or Madam!");
}
тогда вы можете вызвать в консоли:
>sayHello();