我用的是奥雷莉亚字体(v 1.5.4)。我正在使用https://github.com/aurelia/<>/blob/master/dist/amd/aurelia-<>.d.ts
中的类型定义。另外,我正在使用VS2015进行开发,使用以下类型脚本生成配置:。
但是,当我在vms和视图中使用@bindable
时,它似乎不起作用。下面是我在导航栏中使用的示例:nav-bar.ts
:
import aur = require("aurelia-framework");
import bindable = aur.bindable;
export class NavBar {
@bindable router = null;
....
}
这就是我在
app.html
中使用它的方式:<template>
<import from='./nav-bar'></import>
<nav-bar router.bind="router"></nav-bar>
<div class="page-host row">
<router-view></router-view>
</div>
</template>
但由于某种原因它不起作用。如果我需要做一些不同的事情,请告诉我。
谢谢您。
最佳答案
我最近切换到了typescript,但是我不需要更改@bindable,我添加了一个类型来让编译器满意……
import { bindable} from 'aurelia-framework';
export class SomeClass{
@bindable property: boolean = false;
...
}
虽然我的navbar有一个问题,因为我同时绑定路由器和注入它,在本例中,我使用了注入路由器的别名。