Create a global variable
window.Example = Example
I have a class written in coffeescript, e.g.,
class Example constructor: -> $.each [1, 2, 3], (key, value) => @test = value return @test render: -> alert @test
and I have this class as a separate file, Example.coffee
d = new Example d.render()
but the class is undefined even when it is included as a script on the page, like
<script src="Example.js></script> <script src="main.js"></script>
How do you make the class publicly available to the main file?
I know this is an old thread, but in case anyone else finds it useful, declare your class with "@" and it will be accessible to
.js files outside of the
class Introverted honk: -> alert "This class is visible within the .coffee file but not outside" class @Extroverted honk: -> alert "This class is visible inside and outside of the .coffee file"
That is compiled to
example.js which can then be used in
<script src="example.js"></script> <script> var p = new Extroverted(); // works fine p.honk(); var i = new Introverted(); // will fail with "Introverted is not defined" i.honk(); </script>