将应用迁移到AngularJS?

时间:2015-04-05 05:09:06

标签: java angularjs web-applications single-page-application

我有现有的Web应用程序,大多数时间页面都以传统方式提交(如document.form.submit或) 我打算迁移到angularJS,我learning我不确定如何使用angularJS以传统方式(不使用ajax)提交表单? 我知道这不是真正的单页应用程序(SPA),但对于开始我想这样。

将传统应用迁移到SPA的方法: 将来,我想去SPA,我将使用AngularJS通过ajax方式提交表格。我的理解模糊不清 我将如何处理这个问题,但希望得到专家的建议。

我的理解: - 假设我登陆欢迎页面,其中包含客户创建链接。我将从WelcomeController(angularJS控制器)调用ajax到我的servlet / spring控制器 这将返回包含js文件的html响应。 HTML响应将在下面

1)HTML将包含将由routeProvide

使用的ng-view和ng-template

2)其中一个js文件将包含routeProvider Info以将ng-template映射到视图

如果这是正确的方法,请纠正我吗?

2 个答案:

答案 0 :(得分:1)

使用AngularJS进行数据绑定和表单验证。如果要提交表单,可以依赖jQuery:

<div ng-controller="ctrl">
     <form id="myform" name="myform">
        Name: <input type="text" ng-model="person.name" name="person.name" /> <br />
        <button ng-click="submit(person)">Submit</button>
     </form>
</div>

脚本

app.controller('ctrl', function($scope) {
     $scope.submit = function(person) {
         if ($scope.myform.$valid) {
             $('#myform').submit();
         }
     }
});

为此,请确保为输入字段提供正确的范围名称,以便它与MVC模型绑定。

这种方法确实有其局限性。例如,使用ngModel的输入字段不应该有任何$ formatters / $解析器,这会限制您使用简单格式。

答案 1 :(得分:0)

我正在寻找Single Page App with AngularJS,它描述了如何使用AngularJS(具有路由器,控制器,服务等功能)以清晰简洁的方式拥有完整的SPA网络应用