mgcrea.ngStrap日期选择器问题

mgcrea.ngStrap datepicker issue

本文关键字:问题 选择器 日期 ngStrap mgcrea      更新时间:2023-09-26

我在mgcrea.ngStrap库中的日期选择器遇到问题。

布局文件:

<html lang="en-US"  ng-app="ftc">
<head>
<script src="/assets/2db3448a/components/angular.js/angular.min.js"></script>
<script src="https://code.angularjs.org/1.4.8/angular-animate.min.js"></script>
<script src="/assets/2db3448a/components/angular-route/angular-route.min.js"></script>
<script src="/assets/2db3448a/mgcrea/angular-strap/dist/angular-strap.min.js"></script>
<script src="/assets/2db3448a/mgcrea/angular-strap/dist/angular-strap.tpl.min.js"></script>
<!-- Then I'm including the rest of js libs (anguvideo, googlemaps with dependencies, etc.
     Then I'm including stylesheets (bootstrap too) -->
</head>
<body ng-controller="ApplicationController as appCtrl">
<!-- navbar is here -->
<div class="container">
    <div ng-view></div>
</div>
<!-- some static footer -->
<script src="/assets/60113bca/jquery.min.js"></script>
<script src="/js/app.js"></script>
<script src="/js/controllers/application-controller.js"></script>
<script src="/js/controllers/event-create.js"></script>
<!-- My other js files -->
</body>
</html>

我试过将jquery移到头部分,但结果是一样的。

应用程序定义(app.js):

angular.module('ftc', [ 'ngRoute', 'ngAnimate', 'mgcrea.ngStrap', 'anguvideo', 'uiGmapgoogle-maps'])
.config(['$routeProvider', '$httpProvider', 'uiGmapGoogleMapApiProvider',
function($routeProvider, $httpProvider, uiGmapGoogleMapApiProvider) {
// here routing and google maps config
}]);

控制器(eventcreate.js):

angular.module('ftc')
.controller('EventCreateController', ['$location', '$http', '$scope', 'uiGmapGoogleMapApi', 
function($location, $http, $scope, uiGmapGoogleMapApi){
     //there is some google maps api code only
     ...
}]);

查看文件(create.html)这里我有一个表格和谷歌地图预览。大约有10个输入,只有一个我尝试使用ngStrap.datepicker指令,所以代码如下:

<form ng-submit="eventCtrl.add()" name="eventForm" id="event-form" 
     method="post" role="form" novalidate>
    <div class="form-group required col-lg-6">
        <label for="startDate" class="control-label sr-only">Początek wydarzenia</label>
        <input ng-model="event.startDate" type="text" id="startDate" class="form-control" 
               name="startDate" bs-datepicker required>
    </div>
    <!-- and there is the rest of the form -->
</form>

问题:
在Chrome js控制台中,我遇到了一个错误:

https://docs.angularjs.org/error/$injector/unp?p0=$$rAF提供者%20%3C-%20$$rAF%20%3C%-%20$工具提示%20%3C-%20$日期选择器%20%3C-%20bsDatepickerDirective

所有其他libs都工作得很好('ngRoute', 'anguvideo', 'uiGmapgoogle-maps')。所有的库都是通过composer安装的(该应用程序是用PHP yii2框架编写的)。

Libs版本:AngularJS:1.2.0;mgcrea.ngStrap:2.3.6.

知道我错过了什么吗?

干杯,Kamil

从您显示的代码中,您似乎没有加载作为该库一部分的模板JS:angular-strap.tpl.js

如果加载该脚本文件,错误会消失吗?如果你不包含库附带的模板,你就必须自己编写并包含它们。