Скрытые URL-адреса в редакторе AEM SPA - приложение Angular - PullRequest
0 голосов
/ 05 мая 2020

Я работаю над приложением AEM SPA Angular, которое работает на AEM 6.4.7. Используется типичная реализация, в которой компоненты Angular отображаются на компоненты AEM. Чтобы избежать раскрытия каталога / content в URL-адресе, я прибег к использованию специальных URL-адресов, и это был мой подход:

Изменения, внесенные в AEM : - Конфигурация OSGi для Apache Sling Resource Resolver Factory : добавлено сопоставление URL-адресов: / content / awesome / application / home / - / home

Angular: - Маршрутизатор приложений перенаправляет на / home. html - Все URL-адреса в приложении указывают на что-то вроде: /home/something/something-else.html и /home/another-thing/more-things.html

proxy.aem.conf. json: конфигурация этого файла выглядит следующим образом:

[
  {
    "context": [
      "/**.model.json",
      "/content/**/**.jpeg",
      "/content/**/**.jpg",
      "/content/**/**.png",
      "/content/**/**.PNG",
      "/content/**/**/**.png",
      "/content/**/**/**.PNG",
      "/content/**/**/**.jpeg",
      "/content/**/**/**.jpg",
      "/content/**/**/**.pdf"
    ],
    "target": "http://localhost:4503",
    "auth": "username:password",
    "logLevel": "debug"
  }
]

Я создаю приложение и развертываю его в своей среде AEM, работающей на http://localhost: 4503 / home. html, и все работает, как ожидалось, и все мои другие URL-адреса в / home / * работают, как ожидалось.

Проблема: проблема в том, когда я запускаю приложение на http:localhost: 4200, используя: npm start. - Первая страница http://localhost: 4200 / home. html отображается правильно, и также возвращается модель json этой страницы. - На других страницах есть исключения, такие как http://localhost: 4200 / home / something / something-else. html выдает следующую ошибку на консоли:

"ERROR Error: Uncaught (in promise): TypeError: Cannot read property 'lastIndexOf' of undefined
TypeError: Cannot read property 'lastIndexOf' of undefined
at Function.value (cq-spa-page-model-manager.js:1)
at e.value (cq-spa-page-model-manager.js:1)
at e.value (cq-spa-page-model-manager.js:1)
at cq-spa-page-model-manager.js:1
at ZoneDelegate.invoke (zone-evergreen.js:359)
at Object.onInvoke (core.js:39699)
at ZoneDelegate.invoke (zone-evergreen.js:358)
at Zone.run (zone-evergreen.js:124)
at zone-evergreen.js:855
at ZoneDelegate.invokeTask (zone-evergreen.js:391)
at resolvePromise (zone-evergreen.js:797)
at resolvePromise (zone-evergreen.js:754)
at zone-evergreen.js:858
at ZoneDelegate.invokeTask (zone-evergreen.js:391)
at Object.onInvokeTask (core.js:39680)
at ZoneDelegate.invokeTask (zone-evergreen.js:390)
at Zone.runTask (zone-evergreen.js:168)
at drainMicroTaskQueue (zone-evergreen.js:559)"

Модель. json этих страниц также успешно возвращены.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...