我不能包含我需要回答标题的所有内容,所以这就是我关注的问题:
ng-app
初始化)以及我们如何加载它,因为AEM组件是分开的,我无法在其中任何一个中加载大多数。ng-app
将被加载到模板中(这是所有组件都需要的,但它只是在理论上(我不确定)并且我没有看到任何组件示例无处显示如何在TEMPLATE创建时加载JS,CSS文件(而不是创建组件,只是为了清楚)最后但并非最不重要的,如果您有使用此堆栈的示例(足够复杂,不像hello world)或生产项目(完美!),请帮助告诉我,因为我最关心的是"是它可以做"。
许多人提前感谢!
答案 0 :(得分:2)
我目前正在成功使用角度JS与AEM。
哪个是最外面的应用程序(使用ng-app初始化)以及我们如何加载它,因为AEM组件是分开的,我无法在其中任何一个中加载大多数。
ans :您可以为此创建渲染器组件,并将其作为外部应用程序,然后将所需的clientlib添加到其中。之后,您可以将渲染器范围用作普通的角度应用程序。
IMO,大多数的超级ng-app都将加载到模板中(这是所有组件都需要的,但它只是在理论上(我不确定)并且我没有看到任何示例向我显示如何在TEMPLATE创建时加载JS,CSS文件(不是创建组件,只是为了清楚)
ans:而不是在模板中加载它很容易将它作为客户端lib添加到组件中,因为AEM中的js / css等所有内容都可以将其添加为客户端lib < / p>
替代方法,每个AEM组件将是一个单独的角度模块,它将手动引导(我也不确定,请帮助澄清)
ans:是的,你可以创建一个角色应用程序组件,你可以单独引导它
答案 1 :(得分:0)
我已将Angular 1.x与AEM 6.x一起使用并创建了SPA(单页应用程序)。此外,使用Angular 1.x创建了AEM Screens App。
可能有很多方法可以做到,但我遵循以下方法: -
- 使用 ng-app 的AEM页面模板(正文标记)并为网站添加角度依赖关系(clientlib angular 1.x)
- 在您的站点clientlib(JS)中定义角度模块说 module.js ,
var mydb; var uri = 'mongodb://localhost/user1'; var promise = mongooose.connect(uri,{ useMongoClient: true, }); promise.openUri(uri,function(errr,db){ if(errr){ throw errr; }else{ console.log("Connection Successfull"); mydb = db; } });
- 您还可以为不同的路径
定义状态提供程序example: var app = angular.module('app', ['ui.router', 'ngAnimate','ui.bootstrap.tpls','ui.bootstrap.modal']);
- 在特定的clientlib(js)文件中定义每个组件特定的模块/控制器。
醇>app.config(function ($stateProvider, $urlRouterProvider) {});
example (html): <div ng-controller="LoginCtrl" />