我们正在构建一个AngularJS应用程序。我现在正在构建一个根据其加载的URL自定义的公共表单。
例如
http://url.com.au/Registration.cshtml#?org=org1
与
略有不同http://url.com.au/Registration.cshtml#?org=org2
当页面加载时,我想加载GET http://url.com.au/api/Org/org1的一些信息 并使用响应来驱动一些UI元素。
首先,差异会很小(徽标的网址,某些复选框的值),但随着时间的推移,表单可能会越来越动态。
我应该遵循的模式是什么:
答案 0 :(得分:0)
对于一个简单的解决方案,我会在该路由的路由参数中保留url更改。然后使用$routeParams访问它。这样您就可以轻松更改基本的GET URL。
对于简单和动态UI,我会尝试将ngInclude保持在最低限度(加载的文件越少=加载时间越长,它也会创建一个并不总是理想的新范围)。
对于简单的差异,我会将你的html结构化为尽可能适应两种布局。考虑使用ng-show / hide来根据从GET请求中检索的变量触发DOM更改。对于像图像这样的资源,GET请求可以返回图像的路径,然后您可以使用ngSrc来包含它。
在此过程中,您可能需要考虑使用嵌套路由。 UI-Router是一种非常受欢迎的解决方案。