2016-12-29 75 views
3

我是新来的这个框架,我想知道是否有一个组件绑定,允许您指定要在常规HTML元素上使用的组件,而不是定制的组件。我们假设有一个Message组件。是否可以使用它作为:中Aurelia组件绑定

<div component="message"></div> 

代替

<message></message> 

Knockout.js支持此它们的成分:The "component" binding.

回答

6

没错!您可以使用as-element自定义属性来执行此操作。

下面是一个例子:https://gist.run?id=5fc98df81dff7eec2868ea918f6342fb

app.html

<template> 
    <require from="./message"></require> 

    <message say="Say"></message> 

    <div as-element="message" say.bind="what"></div> 
</template> 

app.js

export class App { 
    what = 'What!' 
} 

message.html

<template> 
    <h1>${say}</h1> 
</template> 

message.js

import {bindable} from 'aurelia-framework'; 

export class MessageCustomElement { 
    @bindable say = ''; 
} 

呈现

enter image description here