2016-07-28 16 views
0

ng-showで奇妙な動作が起こっています。私はpostを持っていて、titlelinkの特性を持っています。リンクが存在する場合と存在しない場合があります。そうであれば、私はリンクとしてタイトルを表示したい、そうでなければタイトルだけを表示したい。ng-show奇妙な動作何が起こっているのですか?

(行:。<a href="{{post.link}}"> {{post.link}}</a>は、テストコードで、{{post.link}}が、実際には、間違いなく価値が含まれていないことを示すためにのみあり)

<a ng-show="{{post.link}}" href="{{post.link}}"> 
      {{post.title}} 
    </a> 

    <a href="{{post.link}}"> {{post.link}}</a> 

は私を与える:

enter image description here

だから、{{post.link}}が存在し、アクセス可能であり、入力されているように見えるかもしれませんが、ng-showに関する限り、まだ何とかfalseに評価され、表示されません。私が見ることができるのは、テストコードの結果だけです。

一方、true、または{{post.title}}を評価すると、ng-showが機能します。

私は困惑しています - 私は何を欠いていますか?

<a ng-show="true" href="{{post.link}}"> 
     {{post.title}} 
</a> 
<a href="{{post.link}}"> {{post.link}}</a> 

または

<a ng-show="{{post.title}}" href="{{post.link}}"> 
     {{post.title}} 
</a> 
<a href="{{post.link}}"> {{post.link}}</a> 

私を与える:それは直接変数を使用して

enter image description here

+0

と同様に、ng-hrefを使用してください。https://docs.angularjs.org/api/ng/directive/ngHref –

答えて

3

NG-ショーは{{ ... }}を必要としません。 {{ ... }}

ng-show="post.link" 

にそれを変更するには、出力は、DOMに見えるようにしたい場合にのみ使用されます。 ng-showは角張っているので、必要ありません。

+0

D'oh !!!ありがとう、ミロン – kpollock

関連する問題