我在标题中使用自定义指令打开登录模式,从标题控制器中点击一个函数(其工作正常,模态打开成功)。在模态html我也有一个按钮(登录)当我点击它的调用另一个函数(RegistrationModal)从指令,但它抛出错误不是没有打开,请检查代码
.directive('header', function () {
return {
restrict: 'E',
templateUrl: HTML.HEADER,
scope: true,
controller: function ($scope, $rootScope, $http, $templateCache,$compile) {
$scope.RegistrationModal = function () {
$(".modal").remove();
$(".modal-backdrop").remove();
$http.get(HTML.SIGN_UP, {cache: $templateCache}).success(function (data) {
$(document.body).append($compile(data)($scope));
$('#sign-up1').modal('show');
});
}
$scope.loginModal = function () {
if ($("#sign-up1").length > 0) {
$('#sign-up1').modal('hide');
}
console.log(">>>>>>>>>>>>in login")
$http.get(HTML.LOGIN, {cache: $templateCache}).success(function (data) {
console.log(">>>>>>>>>>>...data is>>>>>.", data);
$(document.body).append($compile(data)($scope));
$('#login-popup').modal('show');
});
}
},
};
return directive;
})
错误
angular.js:13708 TypeError:无法将undefined或null转换为object
答案 0 :(得分:0)
什么是HTML
对象?您将它用作全局变量,因此它可能超出了范围。
你应该注入所有诸如服务或常量之类的东西。