membersound
membersound

Reputation: 86747

How to define multiple main pages in angularjs?

I want to have multiple main index pages that should be accessable independent from each other. Means: there is no global page providing static links to all of the main index pages. Each should live on its own:

WebContent/indexA.html
WebContent/indexB.html
...

Question: how can I write an angularjs controller that shows these pages, if I do not call the*.html extension, but a get-query on that path?

I want to be able to call:

localhost/indexA?param=123
localhost/indexB?test=xyz

Each of them will then map to their own html page, and the request params are to be processed by the controller of that page only.

Is that possible? If yes, how?

Upvotes: 0

Views: 372

Answers (2)

SergeS
SergeS

Reputation: 11779

If I understood correctly, that you need to use same code (Controller) on different HTML pages, loaded with different URLs.

First option is to use directives to encapsulate same logical parts (Each directive can have attributes, you can provide them in HTML, depend on how is your HTML structured). This is good, when you do not have any routing in your app now.

Second option is to use ui-router with HTML5 routing (then you can pick parameters from URL), this will probably require you to move more logic on frontend, but it is clear solution, if this is not small project.

Next option is to put required parameters into script tag of HTML and then load them from your controller - this is dirty, but quick way of solving your issue.

Upvotes: 1

Mahesh
Mahesh

Reputation: 1635

Try ui-router for the same. Based on the parameters you pass, you can choose the active state where you can have your own controller and templateURL

Upvotes: 0

Related Questions