aurelia.js - 自定义绑定引擎?

时间:2015-12-17 10:47:52

标签: knockout.js aurelia clusterize

找到下一个短语:

  

系统是可插拔的,可以让开发人员教它观察属性的新方法,这样你就可以轻松插入自定义模型/视图模型库,如Knockout,Breeze,Backbone等,它们可能有自己的存储属性机制。并提出改变事件。

但未找到示例 - 如何使用它(仅仅是因为无法想象如何"以aurelia的形式绑定"某些数据到模板,还没有附加到文档......并在以后更新这些数据)

P.S。我需要使用 clusterize.js aurelia.js 编写自定义元素,此时此刻没有运气。

2 个答案:

答案 0 :(得分:1)

假设您要使用名为SomeLibrary的库来编写自定义元素:

import {inject, DOM} from 'aurelia-framework';
import SomeLibrary from './someLibrary';

@inject(DOM.Element)
export class MyElement {
    constructor(element) {
        this.element = element;
    }

    //this method will be called by convetions
    bind() {
       //Do your magic here, using SomeLibrary and this.element
    }
}

修改

无需再导入DOM.Element。一个简单的inject(Element)没有任何import语句就足够了。

答案 1 :(得分:1)

感谢Crisim II Numeroano的评论说现在还有另一个可用的github项目:aurelia-knockout。 (2015年12月18日删除了https://github.com/jdanyow中的前一个)。

显示如何将koAurelia一起使用的文档:Aurelia's Adaptive Binding包含有关如何为Aurelia实现自定义绑定的信息。也许你可以从这个页面中的Breeze插件中获得一些灵感,为ko实现一个新的。或者联系已删除插件的作者。