Angular의 여러 모듈에서 단일 지침을 공유하는 방법JS
AngularJS에 대해 아는 한, 이것은 오늘날 흥미로운 라이브러리 중 하나입니다.나는 앵글파워를 서서히 이해하고 있고, 그것을 진심으로 사랑하고 있다.나는 몇 가지 의심이 들며 내가 그것들을 명확히 해 주길 바란다.백그라운드 작업을 해도 어떻게 해야 하는지 알 수 없습니다.
예를 들어, 내 앱에 모듈이 있고 그에 대한 지침이 작성되어 있습니다. 그리고 나는 내 앱에 몇 개의 모듈을 추가하고 다른 모듈용으로 작성된 기존 지침을 재사용하고 싶습니다.내가 어떻게 그것을 달성할 수 있을까.필터, 구성 등에 적용되는 모듈뿐만 아니라
모듈 내부에 서브 모듈을 정의할 수 있습니까?
마크업을 통해 합니다, html 마크업을 는 안 .
ng-controller
.모든 모듈에서 공유하려면 어떻게 해야 합니까?예를 들어, 앱의 모든 모듈 외부에 정의된 변수가 있는데 모듈 내부에 액세스하고 싶을 뿐입니다.이것이 가능합니까?개별 범위, 공유 범위, 루트 범위 등에서 완전히 동작하기 때문에 이 점은 의문입니다.
어떤 도움이라도 주시면 감사하겠습니다.
Q: 예를 들어 내 앱에 모듈이 있고 그에 대한 지침이 작성되어 있습니다. 그리고 내 앱에 모듈을 몇 개 추가하고 다른 모듈용으로 작성된 기존 지침을 재사용하고 싶습니다.내가 어떻게 그것을 달성할 수 있을까.필터, 구성 등에 적용되는 모듈뿐만 아니라
모듈을 선언할 때 종속성을 지정합니다.다음과 같은 지시가 있는 경우:
angular.module( 'moduleA', [] )
.directive( 'myDirective', function () {
// ...
});
다른 모듈에서 해당 모듈을 요구할 수 있습니다.
angular.module( 'moduleB', [ 'moduleA' ] );
에 대한 angular.module
을 사용하다
Q: 모듈 내부에 서브 모듈을 정의할 수 있습니까?
모듈은 엄밀히 말하면 모두 독립적이지만, 가짜로 만드는 것은 매우 흔한 일입니다. ''를 정의할 수 .moduleA
이치미다
angular.module( 'moduleA.one', [] );
angular.module( 'moduleA.two', [] );
angular.module( 'moduleA', [
'moduleA.one',
'moduleA.two'
]);
개발자,, 발, and, , and, and, and, and, and, and, , and, and, and, and, and, and, and,moduleA.one
★★★★★★★★★★★★★★★★★」moduleA.two
moduleA
, 은 언제든지 에 moduleA
2년 전하다
엄밀히 말하면 moduleB
에는 요요경경경 could could could could could could could could could가 필요할 도 있습니다.moduleA.two
그렇게 하고 싶다면.
Q: html 마크업 ng-controller를 통해 동적으로 컨트롤러를 추가하는 방법, 정적이어서는 안 됩니다.
이건 좋은 생각이 아닌 것 같아."뷰"가 공식 기록입니다.어떤 용도입니까?
Q: 모든 모듈에서 공유하려면 어떻게 해야 하나요?예를 들어, 앱의 모든 모듈 외부에 정의된 변수가 있는데 모듈 내부에 액세스하고 싶을 뿐입니다.이것이 가능합니까?개별 범위, 공유 범위, 루트 범위 등에서 완전히 동작하기 때문에 이 점은 의문입니다.
무슨 말인지 잘 모르겠어요.단, 모듈에서 무언가를 정의할 때는 위에서 설명한 바와 같이 필요한 것만으로 다른 모듈에서 액세스할 수 있습니다.하지만 앵귤러에서는JS 앱은 "모든 모듈의 외부"에 있어야 합니다. 모든 것이 모듈에 있어야 합니다. 그렇지 않으면 글로벌 범위에서 정의됩니다(예:window
그건 나쁜 관행일 뿐이에요.
모듈을 효과적으로 구조화하는 방법에 대한 자세한 내용은 다음 웹 사이트를 참조하십시오.ngBoilerplate
kickstarter : http://ngbp.github.io/ngbp/모듈 구조는 코드 재사용을 위해 특별히 설계되었으며 실제로 이러한 개념의 많은 부분을 보여줍니다.
이것들 중 어떤 것에 대해서도 자유롭게 설명해 주시면 제가 답변을 수정해 드리겠습니다.
가장 쉬운 방법
가장 쉬운 방법은 ng 모듈에 모든 공유 가능한 지시사항 및 기타 부품을 추가하는 것입니다.
angular
.module("ng")
.directive("myDirective", function() {
...
})
.filter("MyFilter", function() {
...
});
이것은 가장 쉬운 방법(일종의 설정 후 잊어버리는 것)입니다.지시 스크립트를 HTML에 떨어뜨려 잊어버리고 자연스럽게 필요한 새로운 모듈을 개발할 수 있기 때문입니다.
이 기술의 다른 장점은 무엇입니까?
ng 모듈에 공유 가능한 것을 추가하는 것이 합리적인 이유는 무엇입니까?앱에 특정 ngApp 모듈을 정의하는 것이 아니라 설정만 하는 단순한 페이지가 있을 수 있습니다.ng-app
HTML/BODY에서 인라인 각도 지시만 실행합니다.
지시문을 에 추가하는 경우ng
모듈, 이 페이지들은 지시문을 사용할 수도 있습니다.
<html>
<body ng-app>
<div my-directive>
...
</div>
</body>
</html>
필요한 만큼 범위를 넓힐 수 있도록 앱 시작 부분에 div를 만들면 안 될까요?
<div ng-controller="uberController as uber">
....
other controllers and html code here
....
</div>
uber div 안에 있는 모든 것이 uber 컨트롤러를 사용할 수 있습니다.
언급URL : https://stackoverflow.com/questions/15190408/how-to-share-a-single-directive-across-multiple-modules-in-angularjs
'source' 카테고리의 다른 글
Angular를 사용할 수 있습니까?JS는 Jinja2 템플릿엔진을 탑재하고 있습니까? (0) | 2023.03.10 |
---|---|
스타일 구성 요소 내에서 material-ui 버튼의 호버 효과를 비활성화하는 방법 (0) | 2023.03.10 |
ng-src 강제 새로고침 (0) | 2023.03.10 |
woocommerce rest api를 사용한 쿠폰 적용 (0) | 2023.03.10 |
HTTP POST 요구에 JSON 전달 (0) | 2023.03.10 |