Kendo UI和AngularJS常见问题解析
编者按:《AngularJS and KendoUI - Your Questions Answered》一文囊括了开发者在使用Kendo UI和AngularJS进行开发时遇到的常见问题。下面为该文章的简译内容:
AngularJS中的指令是什么?如何将Kendo UI与之集成?
AngularJS中的指令(Directive)是一种预定义的HTML约定,在AngularJS编译HTML模板时,编译器会根据这些指令来对HTML进行特定的处理。因为Kendo UI附带了一组自定义的AngularJS指令,所以你可以使用它的HTML属性(即指令)来创建一些Kendo UI的控件。
举个例子,如果要在AngularJS应用中创建一个日期选择控件,你只需要在<input>元素上添加自定义指令(属性)“kendo-date-picker”。当AngularJS HTML编译器在<input>元素上发现这个指令(属性)时,就会调用对应的provides来生成一个Kendo UI 日期选择控件。
使用Kendo UI的AngularJS 指令需要多少钱?
Kendo UI的核心指令集是免费且开源的。开发者可以在这里获得源码:Kendo UI 核心 组件GitHub仓库。然而,并非所有Kendo UI 控件都是免费用于商业用途的。如果你想在AngularJS应用中使用Kendo UI专业版,你需要获得一个Kendo UI专业许可证(每个开发者最低需要699美元)。如果你想知道哪些控件是开源免费,哪些是需要许可证的,请参照此表:核心组件VS专业组件对照表。
Kendo UI需要依赖AngularJS才能运行吗?
Kendo UI并不依赖于AngularJS。然而,你应该知道Kendo UI指令已经集成到kendo.ui.core.js 和 kendo.all.js文件中了。但是,如果你是通过引入单个独立的控件脚本文件来使用,Kendo UI指令默认是不会集成进来的。你需要再引入指令脚本文件(即 kendo.angular.js)才行。
Kendo UI支持AngularJS的哪些版本?
Kendo UI 2014.3.1119版本(即2014年的第三次发行版),可以支持到AngularJS 1.3.x。
Kendo UI支持AngularJS 2.0吗?
这个问题已经被列入了AngularJS 2.0的开发计划中,但还没有开始执行。我们跟大家一样都很期待和关注。最终的结果是,Kendo UI可以支持AngularJS 2.0。
使用AngularJS指令需要依赖于JQuery吗?
虽然AngularJS可以不依赖于JQuery,但是Kendo UI不行。所以想要让Kendo UI正常工作必须要引入JQuery,因此Kendo UI的指令肯定需要依赖于JQuery了。
AngularJS会取代Kendo UI的SPA和MVVM吗?
不会。虽然Kendo UI 提供了它自己的templating,views,routers,layout,和MVVM工具,但我们并不打算让AngularJS完全取代这些功能,这样Kendo UI就会完全依赖于AngularJS才能运行。创建Kendo UI指令的目的,是为了帮助AngularJS使用者以AngularJS的思维方式来构建高效、快速运行的应用,而不是强制让那些不使用AngularJS的人来使用AngularJS。
如何才能使用Kendo UI AngularJS 指令?
如果你的应用引入了kendo.ui.core.min.js 或kendo.all.min.js 文件,那么你就可以直接用了。正如前面提到的,Kendo UI AngularJS指令已经集成到了这些文件中,你所要做的就是包含angular.js文件来让Kendo UI和Angular一起工作。
<script src="http://cdnjs.cloudflare.com/ajax/libs/jquery/2.0.3/jquery.min.js"></script> <!-- 2.0.x --> <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.3.14/angular.min.js"></script> <!-- 1.3.0 --> <script src="http://cdn.kendostatic.com/2014.3.1411/js/kendo.all.min.js"></script> <!-- directives already included -->
谁在维护和支持Kendo UI AngularJS指令?
这些指令的开发、维护和支持工作不依赖于任何第三方组织和社区,由Kendo UI团队直接负责这些工作。
Kendo UI提供的所有东西都能和AngularJS兼容吗?
Kendo UI提供了一些与AngularJS相重复的功能,这些功能不应当和AngularJS一起使用。举个例子,当你使用Kendo UI和AngularJS时,应当避免使用Kendo UI的以下功能:
- MVVM
- Router
- View
- Layout
所有的Kendo UI控件都有相应的AngularJS指令吗?
是的。你可以通过控件的名称(比如kendoDatePicker() )来推断出指令的名称。将控件名中驼峰部分的大写字母变成小写,然后在两个单词之间用破折号隔开,就得到了与之对应的指令名称(比如kendo-date-picker)。
Kendo UI移动端控件也支持AngularJS吗?
是的。我们还写了一篇详细的教程来说明它是如何运作的:“使用Kendo UI Mobile和AngularJS”。
还遗漏了哪些问题?
不可能预料到所有会出现的问题。所以如果关于Kendo UI 和AngularJS还有什么疑问,可以在本文的评论部分自由的发表你的观点,届时CSDN会找相应的专家来解答。(编译:李全峰,审校:陈秋歌)
原文链接:AngularJS and KendoUI - Your Questions Answered
欢迎加入CSDN前端交流群:218126086,进行前端技术交流。