我开始使用yeoman并测试发电机设备应用程序(https://github.com/michaelkrone/generator-material-app)我遇到了一个问题。执行APPLICATION时,在浏览器控制台中获取umo跟随错误:
TypeError: cssClasses.split is not a function
at jqLiteAddClass (angular.js:2897)
at Function.$get.extend.addClass (angular.js:3538)
at angular-animate.js:119
at forEach (angular.js:336)
at $$addClass (angular-animate.js:118)
at options (angular-animate.js:132)
at close (angular-animate.js:2328)
at queueAnimation (angular-animate.js:2156)
at Object.$$AnimateQueueProvider.$get.push (angular-animate.js:2053)
at Object.$AnimateProvider.$get.leave (angular.js:5224)
我发现角度是cssClasses参数中的一个函数而不是字符串,如下所示:
cssClasses = (arg1, arg2, arg3) {
2893
if (cssClasses && element.setAttribute) {
2894
var existingClasses = (' ' + (element.getAttribute('class') || '') + ' ')
我已经完成了:npm install,安装bower和gulp build,但没有一个帮助很多。 任何人都知道我可以做些什么来解决这个问题?
答案 0 :(得分:0)
实际上非常简单。 jqlite存在问题,然后我们可以在angularjs前安装完整的jquery。
正如AngularJS文档所述,如果在AngularJS脚本之前加载了jquery,则将使用jquery而不是jqlite。
由于问题出在jqlite中,所以如果我们使用jquery而不是jqlite,问题就会消失。
您需要做的就是:
$ bower install --save jquery
然后在angular.js脚本加载之前添加以下行:
<script src="./bower_components/jquery/dist/jquery.js"></script>
这个问题应该消失。