クリックされたときにJavaScript関数を実行するボタンを取得するのに問題があります。以下がJadeファイルです
extends layout
block content
- var something = function() {
- console.log('something')
- }
button(onclick='#{something()}') Click
これはどこで問題がありますか?
この行で:button(onclick='#{something()}') Click
jadeに、関数のコンテンツをonclick属性の値に貼り付けるように指示します。
関数名を参照するだけです:
button(onclick='something()') Click
ただし、関数はJadeコンパイルステップでのみ使用できるため、これは機能しません。このステップの後、生成されたHTMLはJadeで定義された変数にアクセスできなくなります。
JavaScriptファイルを含めるか、スクリプトタグを使用する必要があります。
script.
var something = function() {
console.log('something')
}
button(onclick='something()') Click
スペースを追加するだけです:
button(onclick='#{something()}') Click