Вот мое приложение. html .erb с тегом h1 и onclick execute JS function greatTutorial()
.
## application.html.erb
<!DOCTYPE html>
<html>
<head>
<title>Dealabs</title>
<%= csrf_meta_tags %>
<%= csp_meta_tag %>
<%= stylesheet_link_tag 'application', media: 'all', 'data-turbolinks-track': 'reload' %>
<%= javascript_pack_tag 'application', 'data-turbolinks-track': 'reload' %>
</head>
<body>
<div class="container">
<%= render "layouts/navbar" %>
<h1 onclick="greatTutorial()">Hello World</h1>
<% if notice %>
<p class="notice alert alert-info"><%= notice %></p>
<% end %>
<% if alert %>
<p class="alert alert-danger"><%= alert %></p>
<% end %>
<%= yield %>
</div>
</body>
</html>
И мой javascript / pack / application . js
##javascript/pack/application.js
require("@rails/ujs").start()
require("turbolinks").start()
require("@rails/activestorage").start()
require("channels")
function greatTutorial() {
alert('Rails Guides are the best');
}
Я последовал за несколькими запросами, но ничего не получалось. Если я заменил свою функцию onclick на h1 onclick="alert('danger')"
, она работает нормально. Но я не понимаю, почему моя функция greatTutorial
не определена (никогда не существует).
Спасибо!