数据绑定 – 与其他UI库集成的angular.js(或knockout.js)?

前端之家收集整理的这篇文章主要介绍了数据绑定 – 与其他UI库集成的angular.js(或knockout.js)?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我将为web应用程序使用knockout.js或angular.js libs(绑定支持的b / c).

我的问题是 – 如何将这些库集成到现有的UI库中,如Dojo,jQueryUI,Ext.js,YUI,..
例如.在UI库中使用数据绑定suport / Syntax用法如何?您必须实现像自定义绑定的东西才能使用窗口小部件UI UI?

对于Knockout,情况是相当不错的.可以通过 custom bindings与第三方小部件集成.绑定API非常简单和海峡.所有你需要的是实现一个或两个方法(引用Knockout文档):
ko.bindingHandlers.yourBindingName = {
    init: function(element,valueAccessor,allBindingsAccessor,viewmodel) {
        // This will be called when the binding is first applied to an element
        // Set up any initial state,event handlers,etc. here
    },update: function(element,viewmodel) {
        // This will be called once when the binding is first applied to an element,// and again whenever the associated observable changes value.
        // Update the DOM element based on the supplied values here.
    }
};

大部分时间实现单一更新方法就足够了.甚至有a collection of ready-made bindings for jQuery UI.它并不涵盖所有的jQuery UI小部件,但是由于创建自定义绑定是如此简单,您可以根据需要实现自己的绑定.

对于JS角度来说情况比较困难.您可以创建自定义绑定作为您自己的Directive的一部分.指令API要求您编写更多的代码.指令的生命周期也很复杂.所以,他们需要相当多的时间来学习.

同时它允许您指定很多不同方面的行为.例如,您可以通过指令完全重写小部件的内部HTML表示,并在其中使用角度模板.在Knockout中,您需要使用jQuery.不幸的是,与Knockout指令中的自定义绑定不同,更适合编写自己的小部件,而不是与现有的小部件集成.

总结:

敲击绑定更容易.与第三方小部件集成很容易.>角度指令更适合编写自己的小部件,但同时更强大.

猜你在找的Angularjs相关文章