检票盘中的角度分量

时间:2013-10-18 16:37:21

标签: angularjs wicket angular-ui-bootstrap

我再次需要你的帮助!

我正在努力获取一个角度组件(ui-bootstrap-datetimepicker)来加载在我的角度代码之外加载的wicket组件。

这是目前的样子

来自Wicket的HTML

<span class="dropdown">
  <a class="dropdown-toggle" role="button" data-toggle="dropdown" data-target="#" href="">
    <div class="input-append">
      <input type="text" placeholder="Date/Time Value" class="input-large" data-ng-model="data.storedValue" required date-time-input="MM/DD/YYYY hh:mm a">
      <button type="button" class="btn"><i class="icon-calendar"></i></button>
    </div>
  </a>
  <ul class="dropdown-menu">
    <datetimepicker data-ng-model="data.storedValue" data-datetimepicker-config="{ dropdownSelector: '.dropdown-toggle', minView: 'minute', minuteStep: 1 }"></datetimepicker>
  </ul>
</span>

运行以编译角度的Javascript

var $injector = angular.injector(['app', 'ui.bootstrap']);
var selector = this.selector;
$injector.invoke(function($rootScope, $compile) {
    var element = $compile(angular.element(selector))($rootScope);
    element.scope().$apply();
    angular.element(selector).scope().$apply();
});

app是我的角度应用模块。

这会有效地呈现组件并显示下拉列表,但不会填充日期。 As seen in this image

我已经尝试了其他几种配置,但要么是让事情变得更糟,要么根本没有帮助。提问,我会尽我所能回答!

修改 此外,我在我的控制台中收到一堆错误,这可能会有所帮助:P

  • 错误:未知提供者:$ rootElementProvider&lt; - $ rootElement&lt; - $ location&lt; - dropdownToggleDirective
  • 循环依赖:$ animator&lt; - ngRepeatDirective
  • 循环依赖:ngShowDirective
  • 错误:语法错误:令牌','不是表达式[changeView('',$ event)]第16列的主表达式,从[,$ event)开始]。

1 个答案:

答案 0 :(得分:0)

当然,在我发布之后,我发现了我做错了什么......

javascript部分应该看起来像......

var $injector = angular.element(document).injector();
var selector = this.selector;
$injector.invoke(function($rootScope, $compile) {
    var element = $compile(angular.element(selector))($rootScope);
    element.scope().$apply();
    angular.element(selector).scope().$apply();
});

我需要从主应用程序中获取注射器而不是构建新的注射器。一旦我这样做,它就能够构建日历。它导致了许多其他问题,但至少该组件正在渲染!