我的想法是使模板(對於問題)可以在旁邊元素中選擇。
爲了在angularjs中創建一個旁路元素,我嘗試了dbtek/angular-aside。這工作相當不錯,但我的問題是,我必須將模板存儲在一個額外的模板文件中,我需要更改現有的$ scope變量(以在表單中設置模板)。
實施例:
create_question.html(按鈕打開擱置元件&顯示模板變量)
<button type="button" class="btn btn-default btn-lg" ng-click="openAside('left')">
<span class="glyphicon glyphicon-align-justify"></span> Right
</button>
Choosen template is {{choosenTemplate}}
create_question.js(VAR爲choosen模板,函數打開擱置元件&函數來更改模板var)
$scope.choosenTemplate = 0; // 0 = default
$scope.openAside = function(position) {
$aside.open({
templateUrl: 'aside.html'
placement: position,
backdrop: true,
controller: function($scope, $modalInstance) {
$scope.ok = function(e) {
$modalInstance.close();
e.stopPropagation();
};
$scope.cancel = function(e) {
$modalInstance.dismiss();
e.stopPropagation();
};
}
})
};
$scope.setTemplate = function(templateNumber)
{
$scope.choosenTemplate = templateNumber;
}
aside.html(模板aside元素 - 內容無關)
<div>
<button ng-click="setTemplate(2)">Template 2</button>
</div>
的擱置元件被示出,但是當我按下按鈕的功能不會被調用。
當我改變
aside.html
<div ng-controller="CreateQuestionCtrl">
<button ng-click="setTemplate(2)">Template 2</button>
</div>
函數被調用,但現在我有兩個不同的$範圍(我認爲)?而且我只能改變錯誤的$ scope元素(在旁邊)。
闖闖是設置的模板在<script>
- 元素這樣的:
<script type="text/ng-template" id="aside.html">
<button ng-click="setTemplate(2)">Template 2</button>
</script>
,並設置create_question.html這裏面的元素,但現在我不能再次調用該函數。
有沒有人有一個想法,我可以在「兩個不同的」頁面上有相同的$範圍?兩者都在同一頁面上,但我不能真正訪問相同的$範圍。