Javascript AngularJs ng如果用于在元素上显示或跳过

Javascript AngularJs ng如果用于在元素上显示或跳过,javascript,angularjs,angularjs-directive,angularjs-scope,Javascript,Angularjs,Angularjs Directive,Angularjs Scope,我正在使用AngularJS。 我有以下模板: <div> ... html content .... </div> 如果$scope.url=',那么我想要: <div> <a ng-href="url"> ... html content .... </a> </div> <div> ... html content .... </div>

我正在使用AngularJS。
我有以下模板:

<div>
    ... html content ....
</div>
如果
$scope.url='
,那么我想要:

<div>
    <a ng-href="url"> 
        ... html content ....
    </a>
</div>
<div>
    ... html content ....
</div>

... html内容。。。。

在AngularJS中有什么方法可以做到这一点吗?

试试
ng开关


.. 内容。。

最终我用一个指令完成了:

app.directive('skipElement', ['$parse', function ($parse) {
    return {
        restrict: 'A',
        link: function (scope, element, attrs) {
            var skip = attrs.skipElement ? !scope.$eval(attrs.skipElement) : false;
            if (skip) {
                var parent = element.parent();
                var children = element.children();

                children.detach();
                parent.append(children);
            }
        }
    };
}]);

你最好的选择是switch语句,因为没有ngElse,除非你想写两个ngif,一个为真,一个为假。我不想重复内容!如果你有很多内容,那么你可以使用一个模板将其抽象出来。如果内容相对较少,那么可以使用{{content}什么是{{content}?它能帮我什么忙?首页的第一个例子解释得很好。我不知道你在说什么。像这样简单的基本功能不需要自定义指令。@olleicua:伙计,你不明白这个问题。如果你能给我举一个例子,说明我在用你的方式寻找什么,我会给你一个V。也许你应该澄清这个问题,因为它并没有说不想复制内容。这是什么内容?内容是html内容。
app.directive('skipElement', ['$parse', function ($parse) {
    return {
        restrict: 'A',
        link: function (scope, element, attrs) {
            var skip = attrs.skipElement ? !scope.$eval(attrs.skipElement) : false;
            if (skip) {
                var parent = element.parent();
                var children = element.children();

                children.detach();
                parent.append(children);
            }
        }
    };
}]);