AngularJS 和嵌入式框架 html
AngularJS and embedded framework html
我正在开发一个用户首选项页面,我决定使用AngularJS来控制数据的状态。
我想要实现的是一个显示当前用户设置的页面,并允许用户编辑它们,取消更改或保存和提交更改(如果他们愿意)。我已将标签和输入控件绑定到模型,以便在用户修改其电子邮件地址时,它会正确反映。
顺便说一下,我的工作基于此示例#3:http://code.angularjs.org/1.0.0rc12/docs-1.0.0rc12/guide/forms
我的问题与页面的默认值有关。由于模型在Javascript中被定义为对象。在上面的链接中,可以在$scope.master= {};
中设置默认值,除了我使用框架生成静态页面而不是从我的服务器检索 json 对象之外,它工作正常。我的页面都是用嵌入式 scala 编写的,所以我在服务器端访问值。将检索到的信息从服务器端获取并变成客户端 JavaScript 可以访问的对象的最佳方法是什么?
你有几个选择。 我这样做的方法是将初始状态(通过WebSocket或其他东西)作为JSON推送到Angular,或者让Angular通过HTTP调用将其从服务器中提取。
您也可以使用 ng-init 标签呈现页面以设置初始状态,但这种方式对我来说似乎很奇怪。
<div ng-controller="FormController" ng-init="formData = {}">
<form>
<input ng-model="formData.input1" ng-init="formData.input1 = 'initialValue'>
</form>
</div>
我正在使用 ASP.NET 和Dapper-Dot-Net。我使用以下技术将我的数据放到页面上,然后进入 Angular 范围。它应该可以转移到您的环境中。
-
在服务器端的页面中定义一个 DataTransferObject 类和一个名为 DtoJson 的公共字符串来保存类实例的序列化版本。
private class DataTransferObject{ public User User; public List<Project> Projects } public string DtoJson; var dto=new DataTransferObject(); var userName="however you get a username"; dto.User=User.Get(userName); // I already have a User class var sql="select * from projects where user_name=:UserName"; var p=new DynamicParameters(); p.Add(":UserId", dto.User.ID); dto.Projects=Project.Query<Project>(sql, p); // returns a list of Project // I use json.net to convert the Dto to json and expose it as a public variable var DtoJson=Json.Convert(dto); // approximate syntax but you get the idea
-
在客户端,我将脚本标记放在页面的头部,并将 DtoJson 注入其中以使其进入全局范围
<script>var dto=<%=DtoJson%>;</script>
-
在我的页面底部,我有一个脚本src="pageName.js",这是我的Angular控制器文件。在控制器内部我说
$scope.dto=dto; console.log($scope.dto);
-
现在,在服务器端创建的 json 在我的控制器范围内,我可以将数据绑定到 {{dto。User.FIRST_NAME}} 和 {{dto.Projects[0].ID}} ng-repeat="for p in dto.项目"等
我希望这是有道理的。
彼得
- 如何在另一个html文件的框架中包含图像
- 需要一种根据请求禁用HTML框架的方法
- 不使用自定义CSS或HTML(使用框架方法)的角度材质文本输入或文本区域标签大小
- 是否有一个支持嵌入HTML页面的跨操作系统GUI框架
- 如何将查询字符串传递到HTML框架
- HTML 框架 - 防止引导弹出窗口在用户单击正文时消失
- 禁用来自另一个html页面的html框架的超链接
- 在页面的html框架内禁用href
- 如何将内容保存在使用 greasemonkey 单击链接时弹出的 html 框架中
- 初学者JavaScript / HTML框架通信
- 你推荐Javascript/Css/HTML框架和库的组合
- JavaScript -多个HTML框架中的多个全局对象
- 如何在不使用HTML框架的情况下做到这一点
- JS/HTML 5框架,一个单一的排名页面
- 在HTML框架中向下滑动菜单
- 需要一个HTML框架的替代品(我现在知道为什么它们是邪恶的)
- Symbian上的Jo HTML框架
- 锚定html框架
- HTML框架集问题
- 我应该使用什么技术来实现这个web UI特性?(HTML框架或表格或其他)