2016-05-04 6 views
0

Это мой код до сих пор, чтобы возвратить представление в браузере через Угловые пользовательские директивы, используя @ html.partialviewУгловая директива templateUrl не работает

var newOne = function() { 
    return { 
     restrict: "A", 
     templateUrl: "newone.html", 
     replace: true, 
     scope: {}, 
     controller: ['$scope', function ($scope) { 
      }] 
    } 
} 

Заявляет Ид «newone.html» здесь:

<script type="text/ng-template" id="newone.html"> 
      @Html.Partial("~/Views/AngularTemplates/Newone.cshtml") 
     </script> 

и, конечно, я называю директиву от HTML:

<div data-new-one></div> 

к сожалению, я не получаю approp ответ. Все, что я получаю сообщение об ошибке (консольный инспектор): [$ компиляции: tpload] Не удалось загрузить шаблон: newone.html

Я пытался сохранить .cshtml в нескольких папках или даже загрузить его из bundleconfig ... Но ничего! Любые идеи? Спасибо!

+0

Поместите этот шаблон в файл HTML или используйте модуль templateCache. – yBrodsky

+0

Во-первых, это похоже на @ html.partial - это команда ASP.NET, поэтому вы должны добавить это как тег в свой вопрос. Кроме того, вы должны проверить консоль разработчика и убедиться, что ''

0

Найдено решение в угловыми документации:
https://docs.angularjs.org/error/$compile/tplrt , который говорит:

шаблон должен иметь ровно один корневой элемент

Кажется, что несколько <div> теги или даже комментарии получают ошибку.

0

Создать новое имя файла с именем:

~/Views/AngularTemplates/Newone.**tpl**.cshtml 

Просто скопировать и прошлое содержимое старого файла в новый tpl.html файл добавление tpl (шаблон) до примера cshtml или html

:

stuff.tpl.html 
Смежные вопросы