【发布时间】:2014-04-02 22:23:01
【问题描述】:
我正在浏览 angular dart 教程,我尝试制作一个项目列表,当单击一个项目时,用单击项目的文本填充输入。在我修改输入中的文本之前,这可以正常工作。之后单击列表中的另一个项目不会更新输入字段中的文本(之前),也不会修改列表中的项目。
我的起点是 2 教程,但尝试将它与第一个教程中的一些输入结合起来。
我的html文件:
<!DOCTYPE html>
<html ng-app>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Test</title>
</head>
<body>
<div data-list>
<ul>
<li ng-repeat="data in ctrl.dataList" ng-click="ctrl.selectData(data)">{{data.text}}</li>
</ul>
<input type="text" value="{{ctrl.selected.text}}">
</div>
<script type="application/dart" src="spa.dart"></script>
<script src="packages/browser/dart.js"></script>
</body>
</html>
我的飞镖文件:
import 'package:angular/angular.dart';
@NgController(
selector: '[data-list]',
publishAs: 'ctrl'
)
class DataController{
DataValue selected;
List<DataValue> dataList = [new DataValue("uno"), new DataValue("dos"), new DataValue("tres")];
void selectData(DataValue selected){
this.selected = selected;
}
}
class DataValue{
@NgTwoWay('text')//Also tried without this. Same result
String text;
DataValue(this.text);
}
class DataAppModule extends Module{
DataAppModule(){
type(DataController);
}
}
void main(){
ngBootstrap(module: new DataAppModule());
}
知道我做错了什么吗?
期望的行为应该是:
显示列表中的项目
当其中任何一个被点击时,输入字段会更新
在编辑输入字段的值时,列表中当前选定的项目将更新为新文本
在任何时候单击项目都会更新输入文件的值
【问题讨论】:
标签: dart angular-dart