How to use StateManager to create a single-page app without routes (what is the replacement for deprecated ViewState)


#1

Hi all,
Sorry for posting this question here, but did not find an answer for my question in Stackoverflow. I am trying to build a single-page web app without any routes other than “/”. I am trying to use StateManager. The ViewState is deprecated. I am also using Ember AnimatedOutlet for animations. In connection with all this, how do I use predefined views in StateManager, (my views are not getting rendered - and I am not able to figure out what is the link between outlets and views defined in StateManager). Is the new Router class used for defining states that have routes (i.e. if I use this class, I will have bookmarkable URLs for individual views, something that I don’t want)? Any example or direction will be of great help as I am in urgent need of some solution.

Thanks,
Paddy


#2

Have you tried this?

App = Ember.Application.create({
  location: false
});

#3

@darthdeus Can you add one sentence about what this code does?

Does this tell the App to use the “none” location router? – Same as the following code, as described in the guides?

App.Router.reopen({
  location: 'none'
});

#4

Hi @darthdeus,
Can I still use just State and StateManager? How can I solve the issue of view not rendering and linking views to outlets? I have a couple of outlets apart from default outlet for some screens with templates and controller names not matching convention, I need to display the views for these screens in respective outlets (my other screens follow the naming convention, so don’t seem to need outlet and work properly)?

The problem is that with StateManager, state transition happens (console log in enter method is printed), but I am not able to see the view upon a state transition (first view is rendered?

Thanks,
Paddy


#5

It should disable the URL based navigation, but the router itself should work. Afaik it’s the same thing as location: "none" :slight_smile: