角度范围变量和插件范围

时间:2016-06-10 03:41:53

标签: javascript jquery angularjs

我正在尝试做几件事,而且我所有人都遇到了同样的问题。我想访问其他libs中的一些角度变量,例如:

我有一个指令,就是这样:

var map = new google.maps.Map(element[0], {
  zoom: 15,
  mapTypeId: google.maps.MapTypeId.ROADMAP,
  mapTypeControl: false,
  zoomControl: true,
  zoomControlOptions: {
    position: google.maps.ControlPosition.RIGHT_TOP
  },
  center: center
});

在这种情况下,center是在map之前声明的变量,但是“Map”中没有center ...

以同样的方式..

我有一个指令:

function link(scope, element, attrs) {
  $.datepicker.regional["pt-BR"];
  element.datepicker({
    onSelect: function() {
      scope.model = $(this).datepicker('getDate');
      scope.showDp = false;
    }
  });
}

“model”和“showDp”是我的范围内的变量,范围可以通过datepicker的函数访问,但是在“onSelect”上我什么都没有,我怎么能在这两种情况下都这样做?

1 个答案:

答案 0 :(得分:1)

对于第一种情况,你可以做这样的事情 -

var center = 'something';
var constructWith = {
    zoom: 15,
    mapTypeId: google.maps.MapTypeId.ROADMAP,
    mapTypeControl: false,
    zoomControl: true,
    zoomControlOptions: {
        position: google.maps.ControlPosition.RIGHT_TOP
    },
    center: center
};
var map = new google.maps.Map(element[0], constructWith);

至于第二种情况,请尝试这样的事情 -

var myFunc = function () {
   // if $(this) doesn't work use $(element)
   scope.model = $(this).datepicker('getDate');
   scope.showDp = false;
};
$.datepicker.regional["pt-BR"];
element.datepicker({onSelect: myFunc});