Question

I'm trying to convert an Express app templated with EJS to Angular. When trying to use the Angular Strap popover I want the popover content to show the data from a HTML partial. The problem is when I reference the file the server makes a GET request for that route and cannot be found.

My express configuration has the index.html file in a templates folder. The statics are in a public folder in a neighboring directory. The complete folder structure looks like this:

app
--public
--templates
  -index.html
  -user.html

The popover content I want is in user.html and it's being referenced from index.html. My angular code looks like this:

<a
  title="User Info"
  data-content="test"
  data-template="/user.html"
  bs-popover>whatever</a>

I've tried user.html, /user.html, and any combination of those. In the console it throws a 404 error from the root saying that http://hostname.com/user.html doesn't exist. My question is, how do I reference a partial html file in angular and get it to point to the right file and not to a GET request to the server?

I've also tried using angular-ui-bootstrap but it lacks partials support.

Thanks!

Was it helpful?

Solution

The files need to be in the folder defined by your Express configuration as the statics folder. So /user.html is looking in public/user.html for the file. If it doesn't find it, then it sends a GET request to the server.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top