如何修复 AngularJS 指令中的“jQuery 可拖动不是函数”
Posted
技术标签:
【中文标题】如何修复 AngularJS 指令中的“jQuery 可拖动不是函数”【英文标题】:How do I fix 'jQuery draggable is not a function' in AngularJS directive 【发布时间】:2016-04-22 20:10:33 【问题描述】:我在 AngularJS 中创建了一个自定义指令,但它会产生错误。
这是我的代码:
myApp.directive("dragMe", function()
return
restrict: 'E',
scope: ,
templateUrl: 'dragMe.html',
link: function(scope, element, attrs)
setTimeout(function()
$(".dummy").draggable()
, 1000);
;
)
在添加此指令时,我收到一个错误:
可拖动不是函数
我在主 HTML 文件中添加了 jQuery 文件,并在 angular 文件之前添加了它。有什么问题?
【问题讨论】:
你的项目中包含 jqueryUI 了吗?draggable()
是 jQueryUI 的方法,不是标准的 jQuery。您需要包含这两个库。
你是对的......我太愚蠢了......非常感谢......很抱歉提出这样的问题
@Sumeetkumar 你的问题没有错。这绝对不是一个愚蠢的人
【参考方案1】:
这是由于您没有同时包含 jQuery UI 库造成的。 Draggable 不是核心 jQuery 的一部分,它是 UI 扩展的一部分。
在 jQuery 参考下面添加 jQuery UI,你会没事的。
【讨论】:
以上是关于如何修复 AngularJS 指令中的“jQuery 可拖动不是函数”的主要内容,如果未能解决你的问题,请参考以下文章
angularjs如何在视图渲染结束之后,或者render之后执行指令中的link方法呢?