Использование дополнительной угловой директивы во внешнем html

0

Это должно быть просто, но я не могу сделать это правильно. У меня есть некоторые настраиваемые угловые директивы, которые работают нормально, и я намерен использовать их во внешнем (другом домене/сервере/порту) html.

Во-первых, я включил скрипты из рабочих директив webapp:

<script 
    data-main="http://localhost:9000/vassets/javascripts/main.js"
    src="http://localhost:9000/vassets/lib/requirejs/require.js">
</script>

Затем я просто попытался использовать один из них во внешнем html:

<div custom-directive attrib="abcd"></div>

Проблема заключается в том, что шаблон, связанный с директивой, не может быть загружен, поскольку он объявлен как:

templateUrl: '/vassets/partials/customDirective.html'

И, конечно, не может быть найден при загрузке внешнего html. Существуют и другие проблемы, связанные с перекрестным сайтом.

Понятно, что я не включаю в себя внешние директивы (и импортирую их источник) правильно.

1 ответ

0

Одна вещь, которая может быть сделана в директивах, вместо ссылки на внешний шаблон, вы можете разместить шаблон внутри самой директивы. Подобно:

template: '<div>Template here</div>'

Теперь, когда вы экспортируете файл директивы в новое приложение, вы также не будете беспокоиться об экспорте его файла шаблона.

Кроме того, вы можете сохранить существующий сценарий и разместить шаблон в том месте, где его ищет.

  • 0
    Проблема с подходом html-шаблона заключается в грязном исходном коде, поскольку template не так прост, как div, а представляет собой полный html-файл со многими элементами.
  • 0
    хммм, тогда, возможно, для сред разработки можно использовать templateUrl, но при создании проекта можно заменить templateUrl шаблоном и вставить html в директиву. Это будет держать вещи в чистоте при разработке и вносить грязный исходный код только при запуске в производство. Если это не так, вам нужно будет разместить шаблон там, где его ищет директива. (как указано в последней строке моего ответа)

Ещё вопросы

Сообщество Overcoder
Наверх
Меню