从 angular 控制器传回 link
pass a link back from angular controller
我已经使用 angularjs 和 firebase 构建了一个登录表单。到目前为止一切顺利——但如果登录尝试不正确,我需要将 "reset password" link 传回视图。它看起来像这样:
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');
});
}
}
除恢复密码 link 外一切正常——在 $scope.authMsg
值中创建 link 的正确方法是什么? link()
根本不起作用,如果我尝试简单地在 return 字符串中写入 a
标记,它会打印原始 HTML 而不是将其解释为link.
如果你想在 $scope.authMsg 中显示一个 link,你可以使用 $sce 服务并使用 ng-bind-[=18= 将安全的 html 绑定到一个元素]指令。
$scope.authMsg = $sce.trustAsHtml('<a href="">Reset Password</a>');
检查这个 plunker 例如 ng-bind-html 和 $sce.trustAsService('') 例子。
我已经使用 angularjs 和 firebase 构建了一个登录表单。到目前为止一切顺利——但如果登录尝试不正确,我需要将 "reset password" link 传回视图。它看起来像这样:
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');
});
}
}
除恢复密码 link 外一切正常——在 $scope.authMsg
值中创建 link 的正确方法是什么? link()
根本不起作用,如果我尝试简单地在 return 字符串中写入 a
标记,它会打印原始 HTML 而不是将其解释为link.
如果你想在 $scope.authMsg 中显示一个 link,你可以使用 $sce 服务并使用 ng-bind-[=18= 将安全的 html 绑定到一个元素]指令。
$scope.authMsg = $sce.trustAsHtml('<a href="">Reset Password</a>');
检查这个 plunker 例如 ng-bind-html 和 $sce.trustAsService('') 例子。