Passing Parameter w/ Router (Parameter vs Raw Parameter)

Hey Guys,

I’ve been struggling the past couple of days trying to figure out the navigator, router and flow of data. Right now I’m running into a weird problem trying to pass an argument through as a parameter as I instantiate a new page with the navigator. Feels like I’m just doing something weird, but I can’t figure it out.

Instead of the argument coming through in this.Parameter, it appears to be coming through in something called “raw parameter” that isn’t documented anywhere that I could easily find.

My function called with a Click="{goToDetails}". Upon debugging the argument here has my data that I want to pass through.
![file](https://s3.us-east-2.amazonaws.com/fuse-legacy-forum-assets/0Enq9PsrpcSV-image-1473929020854.35.28 AM.png)

Then upon instantiating the new page, this.Parameter is empty while _raw_parameter has the data that I wanted to pass through.
![file](https://s3.us-east-2.amazonaws.com/fuse-legacy-forum-assets/ozTjkYFdCU3L-image-1473929163566.36.29 AM.png)

Any ideas on what I’m doing wrong?

Hi! Sorry about the slow reply.

This is probably not the cause of your issue, but i believe you want to pass arg.data to your router, not just arg. Could you see if this makes a difference?

You have to keep in mind that the passing of a parameter argument happens asynchronous from the actual evaluation of the javascript module. this.Parameter is an Observable (you can read up on that here: https://www.fusetools.com/docs/fusejs/observable), and so you have to actually subscribe as a listener on it in order to be notified of when its value actually changes.

Try doing something like:

this.Parameter.onValueChanged(function(newParam){
    //here we have our new parameter
});

to get a callback when the parameter changes.

I hope this helps :slight_smile: