결합 플레이!Framework 2.xx 와 Angular.js
나는 겉으로 보기에 강력한 두 개의 틀의 결혼 때문에 곤란하다.1이 할 수 있는 일은 대부분 2가 할 수 있는 것 같아요.이 두 가지를 가장 잘 활용하는 방법사고방식이 있나요?CRUD 어플리케이션의 기본적인 예를 들어보겠습니다. -- 나는 재생 중인 컨트롤러에 매핑되는 루트 mysite/list names를 쓸 수 있습니다.이것에 의해, 코드가 있는 템플릿이 렌더링 됩니다.
@(names:List[String])
@main("Welcome") {
@for( name <- names ){
<p> Hello, @name </p>
}
main은 일반적인 부트스트래핑템플릿입니다.그러나, 이러한 이름을 필터링하기 위한 입력 상자를 추가하거나, 이 이름으로 어떠한 조작을 하고 싶다고 해도, 이 출력은 Angular에 도움이 되지 않는 것 같습니다.전형적인 진행 방식은 무엇입니까?기본적인 건...
1) Play에 의해 템플릿을 angular로 렌더링한 후 도착한 데이터를 클라이언트 측에서 나중에 사용할 수 있도록 전달하는 방법.
2) 수학적 객체 지향 백엔드+서버와 프런트엔드의 상당히 집약적인 UI를 포함하는 대규모 앱에서 이 두 개의 프레임워크를 함께 사용하는 것이 권장되는가?
이 두 프레임워크를 조합할 수 있는 방법은 여러 가지가 있습니다.모든 것은 당신이 그들 각각을 얼마나 부러워하고 싶은지에 달려있다.예를 들면,Play 2
응용 프로그램은 한쪽(서버 측) 및 Angular에서만 JSON 요청/응답 서비스를 제공할 수 있습니다.JS는 다른 모든 것을 클라이언트 측에서 만듭니다.기본 CRUD 앱의 예를 참고하여:
Play 2 컨트롤러:
def getNames = Action { val names = List("Bob","Mike","John") Ok(Json.toJson(names)).as(JSON) }
플레이 루트:
GET /getNames controllers.Application.getNames
AngularJs 컨트롤러:
app.controller('NamesCtrl', function($scope) { // get names using AngularJS AJAX API $http.get('/getNames').success(function(data){ $scope.names = data; }); });
델의 HTML:
<!doctype html> <html ng-app> <head> <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.10/angular.min.js"> </script> </head> <body> <div> <ul> <li ng-repeat=" name in names">{{name}}</li> </ul> </div> </body> </html>
이것에 의해, 고객의 클라이언트측에서는, 서버측의 실장 방법에 관계없이, 응답으로서 유효한 JSON만이 필요합니다.그것은 좋은 관행으로 여겨진다.
하지만 물론 HTML의 대부분은Play 2
및 사용AngularJS
필요한 경우 특정 용도로 사용할 수 있습니다.앱에 어떤 컨셉을 선택하느냐에 따라 달라집니다.
...Play를 통해 템플릿을 angular로 렌더링한 후 도착한 데이터를 클라이언트 측에서 나중에 사용할 수 있도록 전달하려면 어떻게 해야 합니까?
좋은 생각은 아닌 것 같습니다만, 반드시 다음을 사용해 주세요.ngInit
다음과 같이 지시합니다.
@(message:String)
@main("Welcome") {
<div ng-init="angular_message = @message">
<h1>Hello, {{angular_message}} !</h1>
</div>
}
그리고 당신은angular_message
에서scope
로 초기화된.@message
로부터 값을 매기다.Play 2
플릿입입니니다
수학적 객체 지향 백엔드 + 서버와 프런트엔드의 상당히 집약적인 UI를 포함하는 대규모 앱에서 이 두 개의 프레임워크를 함께 사용하는 것이 권장됩니까?
제 관점에서는 두 개의 훌륭한 프레임워크가 완벽하게 조화를 이루고 있습니다.
언급URL : https://stackoverflow.com/questions/21347483/combining-play-framework-2-xx-with-angular-js
'programing' 카테고리의 다른 글
컨트롤러에서 json 및 xml을 반환하는 스프링 부트 (0) | 2023.03.23 |
---|---|
Newtonsoft를 사용하여 JSON 어레이를 역직렬화하려면 어떻게 해야 합니까?제이슨 (0) | 2023.03.23 |
여러 속성 중 하나 이상이 필요한 JSON 스키마를 정의하는 방법 (0) | 2023.03.23 |
스프링 부트의 OffsetDateTime에 대한 Jackson 날짜 형식 (0) | 2023.03.23 |
$.syslog( { async : false } ) 요청이 아직 비동기적으로 실행되고 있습니까? (0) | 2023.03.23 |