Imagine a simple Play Action defined as
def reactTest = Action {
request => Ok(views.html.hello("JOHN"))
}
and the hello.scala.html
looks like this, using a basic React.js example:
@(name: String)
....
<div id="example"></div>
<script type="text/jsx">
React.render(
<h1>Hello, @name!</h1>, <---- NAME PARAMETER USED HERE
document.getElementById('example')
);
</script>
This works fine and the result will be a 'Hello, JOHN!' page. Now, I know that the Scala code is executed on the server and the JS code on the client, but I am wondering if there would be a way to pass the @name
parameter to the same javascript (jsx) code if such code was in a separate .js file, and the <div>
would look like:
<div id="example"></div>
<script type="text/jsx" src="@routes.Assets.at("javascripts/hello.js"></script>
Would there be a way to pass the @name
parameter to the script in hello.js
?