我正在使用该ngInclude指令来加载HTML片段.现在我正在寻找传递动态URL的最佳方法.我知道我可以使用字符串连接创建URL:
<ng-include src="'/foo/' + fooId + '/bar/' + barId + '/baz/' + bazId"></ng-include>
Run Code Online (Sandbox Code Playgroud)
在我眼里,这有点难看.
ngHref并且ngSrc例如,接受包含URL {{}}标记.恕我直言,这种语法更清晰:
<img ng-src="/foo/{{fooId}}/bar/{{barId}}/baz/{{bazId}}"/>
<a ng-href="/foo/{{fooId}}/bar/{{barId}}/baz/{{bazId}}"/>
Run Code Online (Sandbox Code Playgroud)
有没有更好的方法将动态URL传递给ngInclude?
我很难理解泽西的注射机制.JAX-RS规范(http://jsr311.java.net/nonav/releases/1.1/spec/spec3.html#x3-520005)声明可以在Application子类,根资源类和提供程序中通过@Context进行注入.
我现在有一个在启动时实例化的类,并且有一个在每个请求上调用的方法.在方法内部,我需要访问当前的UriInfo对象.问题是,我的代码没有调用此方法.所以我无法直接将UriInfo传递给该方法.
我其实想做这样的事情:
public class MyClass implements ThirdPartyInterface {
// not possible because class is no Application subclass, root resource class or provider
@Context
private UriInfo uriInfo;
public void methodCallebByThirdPartyCode() {
Uri requestUri = uriInfo.getRequestUri();
// do something
}
}
Run Code Online (Sandbox Code Playgroud)
我试过这个.显然没有成功:
public class MyClass implements ThirdPartyInterface {
private UriInfo uriInfo;
public MyClass(UriInfo uriInfo) {
this.uriInfo = uriInfo;
}
public void methodCallebByThirdPartyCode() {
Uri requestUri = uriInfo.getRequestUri();
// do something
}
}
@Provider
@Produces(MediaType.WILDCARD)
public class MyBodyWriter implements MessageBodyWriter<MyView> …Run Code Online (Sandbox Code Playgroud)