角材初心者はこちらです。私は、私たちのクライアントの指示に従って、スイッチを使って私たちのサイトのいくつかの要素を隠そうとしています。これは角度材料のmd-switch
に私を導いた。md-switchを使って<img>を非表示にする
は、だから私はそう...
<md-switch md-no-ink aria-label="switchView" ng-model="switchView">{{switchView}}</md-switch>
のようにそれを組み込む試み、このように私の要素のスイッチの値と呼ば:
<img ng-src="{{photoPath}}" class="profilePic" ng-hide="switchView"/>
かかわらず、それをテストした後、それはしませんでした私のswitchViewがその値を変更したとしても、私の<img>
を隠してしまいます。私はここに何かを逃していますか私が試した
その他の方法:
switchView
の値を別の変数(例えば$scope.toggleView = $scope.switchView
)に等しくなり関数を呼び出し、私のmd-switch
にng-change
を追加します。$scope.toggleView
は私のng-hide
で使用されます。ng-hide = "switchView == true"
。
アドバイスをいただければ幸いです。ありがとうございました。
UPDATE 1:それをテストするために、私は私の横に<md-switch>
<div>
を隠してみましたし、それは完全に働きました。しかし、それはまだ私の<img>
で動作していません。
さらにチェックすると、<nav>
要素の内部にあることが明らかになりました。しかし、彼らは両方とも同じコントローラを使用しています。それが問題なのだろうか?私はこれが原因で問題にならないと思った。他のページ内の要素を非表示にする計画がありますので、私は私のJSファイルに次のコードを追加しました:
<nav ng-controller="MainController">
<!-- other navigation elements here -->
<img ng-src="{{photoPath}}" class="profilePic" ng-hide="switchView"/>
</nav>
<div ng-controller="MainController">
<div>Toggle Switch</div>
<md-switch md-no-ink aria-label="switchView" ng-model="switchView">{{switchView}}</md-switch>
</div>
UPDATE 2:
構造は次のようです。それでも動作しませんでした。
$scope.onChange = function(value) {
$scope.$broadcast("view_mode", $scope.switchView);
}
$scope.$on("view_mode", function(event, switchValue) {
$scope.viewThis= switchValue;
});
私のHTMLは次のようになります。
<img ng-src="{{photoPath}}" class="profilePic" ng-hide="viewThis"/>
は、コントローラについては、ngMaterial
は、当社のすべての依存関係とのconfigsと一緒に、別のJSファイル(主力)で呼ばれていました。したがって、これはMainController
の内部では呼び出されませんでした。 mainApp.js
var app = angular.module('myAppModule', [
// other references here
'ngMaterial'
]);
mySample.js
angular
.module('myAppModule')
.controller('MainController', ['$scope', function ($scope) {
// functions etc. go here
が、これは明確に物事をアップに役立ちます願っています。ありがとうございました。
コードスニペットに何も表示されません。コントローラから何かが見つからないか、コントローラがまったく動作していない可能性があります。 http://codepen.io/anon/pen/WGqrEr – whyyie
サンプルコードありがとうございました。 1つの質問: 'material.svgAssetsCache'はどういう意味ですか? –
該当しません。あなたのコードでそれを削除することができ、それは正常に動作します。 – whyyie