我用的是奥雷莉亚字体(v 1.5.4)。我正在使用https://github.com/aurelia/<>/blob/master/dist/amd/aurelia-<>.d.ts中的类型定义。另外,我正在使用VS2015进行开发,使用以下类型脚本生成配置:typescript -  typescript 中的@bindable不起作用-LMLPHP
但是,当我在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有一个问题,因为我同时绑定路由器和注入它,在本例中,我使用了注入路由器的别名。

10-08 02:12