angular 학습 노트 (1)

2052 단어
1. 종속성 만들기:
(1)factory를 통해 만들기
angular.module('myApp.services', []) 
  .factory('githubService', function() { 
    var serviceInstance = {}; 
    //   
    return serviceInstance; 
  });

호출:
app.controller('ServiceController', ['$scope', '$timeout', 'githubService', 
    function($scope, $timeout, githubService) { 
}]);

주의: 우리는 Angular 서비스가 주입에 의존하는 규범을 준수해야 한다. 사용자 정의 서비스는 내장된 Angular 서비스를 쓴 후에 사용자 정의 서비스 사이에는 선후 순서가 없다.
2.$watch 어플리케이션:
$scope.$watch ("변수 이름: username", function (newUsername) {
//newUsername: 새 변수 값
})
3.controller 컨트롤러
주의: 컨트롤러에서 DOM을 조작하는 행위를 하지 마세요. 이렇게 하면 컨트롤러를 오염시키고 잠재적인 위험을 남길 수 있습니다. 
4.directive
기본적으로dom 구조의 수정은 모두 이 상태에서 실행된다
myapp.directive("recheck", ["validate", function(validate) {// validate ( api),
	return {
		require: "ngModel",
		scope: false,
		compile: function(tElem, attrs) {
			return function(scope, ele, attrs, ctrs) {
				ele.bind("blur", function() {
					var output = scope.userpswagain == scope.userpsw;
					scope.$apply(function() {
						//ctrs.$setValidity("validneed", output);
						scope.recheck = !output;
					})
				})
			}
		}
	}
}]);

5.angular $http와 백엔드 php 데이터 상호작용
//.js
$http({
	headers: {
			'Content-Type': 'application/x-www-form-urlencoded;charset=utf-8'
		},
				"method":"post",// get
				"url": "",
				"data": formdata
			}).success(function(data, status, headers, config) {
 
				console.log(data);
			}).error(function(data, status, headers, config) {
				console.log(data)
			})
//.php
 header("Content-type:text/html;charest=utf-8");
 $params=file_get_contents("php://input","r");
 echo $params;

jquery 처리 방식과 달리 php는angular가 전송한 값을 정상적으로 읽을 수 없습니다. file_get_contents("php://input","r"); 처리

좋은 웹페이지 즐겨찾기