从角度控制器传回一个链接

时间:2015-01-10 18:24:59

标签: javascript angularjs firebase

我已经使用angularjs和firebase构建了一个登录表单。到目前为止一切都很好 - 但如果登录尝试不正确,我需要将“重置密码”链接传回视图。它看起来像这样:

ref.authWithPassword({
    email: $scope.account.email, password: $scope.account.password
}, function(error, authData){
    if(error){
        $scope.$apply(function() {
            // this part isn't working
            // also tried:  $scope.authMsg = 'Incorrect credentials. <a href="reset">Reset password?</a>';
            var reset = 'Reset password?';
            reset.link("/pages/recover/");
            $scope.authMsg = 'Incorrect credentials. '+reset;
        });
    } else {
        $scope.$apply(function() {
            $state.go('app.dashboard');
        });
    }
}

这一切正常,除了恢复密码链接 - 在$scope.authMsg值中创建链接的正确方法是什么? link()根本不起作用,如果我尝试在返回字符串中简单地编写a标记,它会打印原始HTML而不是将其解释为链接。

1 个答案:

答案 0 :(得分:0)

如果要在$ scope.authMsg中显示链接,可以使用$ sce service并使用ng-bind-html指令将safe html绑定到元素。

$scope.authMsg = $sce.trustAsHtml('<a href="">Reset Password</a>');

检查此plunker,例如ng-bind-html和$ sce.trustAsService('')示例。