您可以在控制器或您创建的自定义指令中使用角度 $location 服务,您更喜欢根据 $location.$$absUrl 值设置逻辑。
//in your controller
app.controller('SomeController', ['$scope', '$location',
function ($scope, $location) {
$scope.hideBasedOnUrl = $location.$$absUrl.indexOf('show=cookie-banner') !== -1;
}]);
//html
<div ng-hide="hideBasedOnUrl " class="cookie-banner">
Warning you about cookies
</div>
//in a directive
app.directive("hideBasedOnUrl", function ($location) {
return {
restrict: "E",
link: function (scope, element, attrs, ngModelCtrl) {
if ($location.$$absUrl.indexOf('show=cookie-banner') !== -1){
element.style.display = "none";
}
}
}
});
//html
<div hideBasedOnUrl class="cookie-banner">
Warning you about cookies
</div>
使用该指令,您可以执行更高级的操作,例如在您想要隐藏 div 时将 html 中的 url 值作为属性传递。
希望这可以帮助!