私はドロップダウンに非常に似たカスタムディレクティブを持っています。ドロップダウンメニューの項目は、特定の動画のファイル名に関連付けられています。ドロップダウンの下のdivは、デフォルトのビデオファイルを表示します(これはVideoangularで行いました)。ドロップダウンの選択(カスタムディレクティブ)に基づくdivの内容をリフレッシュする
ドロップダウンメニューから選択するたびに、filename(String)を含むデフォルトの変数を必要なものに変更します。しかし、それは部門に反映されていません。
私の目的は、ドロップダウンメニューから選択するたびに適切なビデオを含むdivをリフレッシュすることです。
これは私のコントローラである:
angular.module('myApp',
[
"ngSanitize",
"com.2fdevs.videogular",
"com.2fdevs.videogular.plugins.controls",
"com.2fdevs.videogular.plugins.overlayplay"
]
)
.controller('ctrl',
["$rootScope", "$scope", "$state", "$log", "Restangular",
function ($rootScope, $scope, $state, $log, Restangular) {
'use strict';
var vm = this;
//DEFAULT VIDEO FILE NAME
vm.fields = "WaterCool1";
this.config = {
sources: [
{src: "assets/data/"+vm.fields+".mp4", type: "video/mp4"}
]
};
vm.loadPage = loadPage;
vm.coolingSystemTypeSelector = {coolingSystemTypeSelector:{}};
getAll('cooling-system-type').then(
function(objs) {
$log.debug("get Cooling System Type", objs);
vm.coolingSystemTypeSelector = objs.selector;
vm.fields = "WaterCool1";
vm.coolingSystemTypeSelector.onSelect = function (selection) {
if(!selection){
return;
}
$log.debug("Cooling System Type Selection == ", selection);
if(selection.label==="ACC"){
vm.fields = "AirCool";
}else if(selection.label === "WCC-CT"){
vm.fields = "WaterCool1";
}else if(selection.label === "WCC-DC"){
vm.fields = "WaterCool2";
}
};
}
);
///.....
}
]
);
は、これが私のHTMLです:あなたが必要なもの
<div>
<selector form="form" columns=vm.columns target="vm.coolingSystemTypeSelector"></selector>
</div>
<hr>
<div id="refreshThisDiv">
<!--I want to refresh this div-->
<videogular vg-theme="vm.config.theme">
<!--VIDEOGULAR CODE-->
</videogular>
</div>
指示コードがないと助けになりません。デモは問題に関連しないコードを削除するのに役立ちます – charlietfl