アンギュラーの新機能。正しいやり方を理解しようとする
ユーザーが次のページに移動する前にリンクをクリックしたときにカスタム ロジックを実行するディレクティブを作成しようとしています。ただし、カスタム ロジックに到達する前に、ディレクティブを設定するのに苦労しています。私はできるようにしたい:
A) ディレクティブの特定の属性をオプションにする (場合によっては異なるデフォルトに設定する)
B) ユーザーが文字列リテラルまたは変数をコントローラーのスコープからディレクティブの属性に渡して、ディレクティブのスコープで使用できるようにします。
私の問題:
1.) ディレクティブの属性で文字列リテラルを使用すると、対応する $scope プロパティが未定義になります。$attrs を介してアクセスする必要があります。これは最悪のことではありませんが、$scope.Prop をチェックし、未定義の場合は $attrs.Prop をチェックするのは間違った方法のようです。
2.) また、この回答は、属性で文字列リテラルを使用するときに一重引用符を使用する必要があると言っているようですが、その動作は私の例では機能しません。
3.) ディレクティブに特定の属性が設定されていない場合、ディレクティブの「コントローラー」関数で $scope に設定したデフォルト値がレンダリング時に反映されません。理由がわかりません。
どんな助けでも大歓迎です!