# Function not found in data context

**URL:** <https://forums.fusetools.com/t/function-not-found-in-data-context/6477>\
**Category:** How-to Discussions\
**Created:** [February 14, 2018, 3:51pm UTC](https://forums.fusetools.com/t/function-not-found-in-data-context/6477 "2018-02-14T15:51:38Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![Levin](https://avatars.discourse-cdn.com/v4/letter/l/cab0a1/32.png) [@Levin](https://forums.fusetools.com/u/Levin)\
**Post date:** [February 14, 2018, 3:51pm UTC](https://forums.fusetools.com/t/function-not-found-in-data-context/6477/1 "2018-02-14T15:51:38Z")

</div>

I tried to call a Javascript function with Callback Handler="{someJSFunction}" but the console always says {someJSFunction} not found in data context.  
My Code:

```auto
<JavaScript>
	console.log("test");
    	function someJSFunction () {
        		console.log("some function called");
    	}
        module.exports = { someJSFunction: someJSFunction };
</JavaScript>
<Callback Handler="{someJSFunction}"/>

```

Hopefully someone can help me with this problem.

---

<div class="post-metadata">

**Author:** ![Uldis](https://yyz1.discourse-cdn.com/flex035/user_avatar/forums.fusetools.com/uldis/32/657_2.png) [@Uldis](https://forums.fusetools.com/u/Uldis)\
**Post date:** [February 14, 2018, 3:57pm UTC](https://forums.fusetools.com/t/function-not-found-in-data-context/6477/2 "2018-02-14T15:57:18Z")

</div>

Could you please post more complete code? Your `Callback` probably doesn’t live in the context where the `JavaScript` resides.

Alas, this works just fine for me:

```auto
<App>
	<JavaScript>
		function test() {
			console.log("test called");
		}
		module.exports = {
			test: test
		};
	</JavaScript>
	<Panel Alignment="Center" Width="200" Height="56" Color="#18f">
		<Text Value="Click me" Alignment="Center" Color="#fff" />
		<Clicked>
			<Callback Handler="{test}" />
		</Clicked>
	</Panel>
</App>

```

---

<div class="post-metadata">

**Author:** ![Levin](https://avatars.discourse-cdn.com/v4/letter/l/cab0a1/32.png) [@Levin](https://forums.fusetools.com/u/Levin)\
**Post date:** [February 14, 2018, 4:01pm UTC](https://forums.fusetools.com/t/function-not-found-in-data-context/6477/3 "2018-02-14T16:01:28Z")

</div>

```auto
<Panel HitTestMode="LocalBounds">
	<Grid Columns="auto,1*" Margin="70,0" Alignment="Right">
		<Text ux:Name="header1" Value="Heute" Alignment="CenterRight"/>
	</Grid>
	<Clicked>
		<JavaScript>
			console.log("test");
			function someJSFunction () {
				console.log("some function called");
			}
		 	module.exports = { someJSFunction: someJSFunction };
		</JavaScript>
		<Callback Handler="{someJSFunction}"/>
		<Set nav.Active="heute" />
	</Clicked>
</Panel>

```

---

<div class="post-metadata">

**Author:** ![Uldis](https://yyz1.discourse-cdn.com/flex035/user_avatar/forums.fusetools.com/uldis/32/657_2.png) [@Uldis](https://forums.fusetools.com/u/Uldis)\
**Post date:** [February 14, 2018, 4:21pm UTC](https://forums.fusetools.com/t/function-not-found-in-data-context/6477/4 "2018-02-14T16:21:47Z")

</div>

Why would you put `JavaScript` inside of `Clicked`? Don’t do that.

The `JavaScript` block is instantiated in UX, so if you only have it there while the `Clicked` trigger is active (which is a _very_ short while, since it’s a pulse trigger), then it’s no wonder it doesn’t work.

Perhaps you should familiarise yourself with MVVM pattern, since that is what you should follow when making Fuse apps.

---

<div class="post-metadata">

**Author:** ![Levin](https://avatars.discourse-cdn.com/v4/letter/l/cab0a1/32.png) [@Levin](https://forums.fusetools.com/u/Levin)\
**Post date:** [February 14, 2018, 4:27pm UTC](https://forums.fusetools.com/t/function-not-found-in-data-context/6477/5 "2018-02-14T16:27:30Z")

</div>

Thanks for the fast help, it’s working now
