У меня есть текущий проект, основанный на одностраничных приложениях (SPA), и я хотел бы внедрить функцию, которая динамически загружает директивы в мой html на основе того, какой вид SPA необходим.
Соответствующий код, который:
часть моего контроллера, который должен загрузить директиву
function checkSpaType(x) { if (x === "quiz") { const directivePosition = document.getElementById("spa"); directivePosition.append($compile("<quizSPA></quizSPA>")($scope)); }; };
сама директива
function quizDirective() { return { templateUrl: "templates/quizSPA.html", controller: 'quizCtrl', link: function quizSPA() {} } }
и конечно, это не волнует k, как планировалось. После запуска скриптов единственное, что загружается в моем HTML, - это сообщение «[object HTMLUnknownElement]]» iam очень уверен, что угловая просто не нахожу мою директиву, но как я могу ее видеть?
Также папка с шаблонами находится в той же папке, что и index.html, с которой начинается сайт. Так что это не должно быть проблемой. Аналогично, я уже пробовал переименовать теги, которые я загружаю в html, к сожалению, никакого эффекта.
У кого-нибудь есть идея?
Okay после некоторого копания я нашел по крайней мере часть проблемы. Мой сценарий определенно находит директиву. Я разделил свой код и сохранил компиляцию $ в переменной, зарегистрировал переменную и только затем добавил переменную в свой html. Пока только сообщение "[[object HTMLUnknownElement]]" загружается в мой html, выкапывая в журнал, есть фрукты. Журнал показывает, что зарегистрированная переменная, которая позже добавляется, содержит дочерние элементы, содержащие мою директиву. Таким образом, проблема должна заключаться в том, что либо компиляция isnt компилируется, как предполагается, либо добавляет не добавляя, как предполагалось. –