Nativescript 更改的文字未反映到viewmodel属性的原因

Nativescript 更改的文字未反映到viewmodel属性的原因,nativescript,Nativescript,我有一个属性名称 var viewModel = observableModule.fromObject({ name: "abcd", onUsernameChanged: function () { console.log("-->"+ viewModel.name) } }); textfield如下所示 <TextField text="{{name}}" textChang

我有一个属性
名称

var viewModel = observableModule.fromObject({
    name: "abcd",
    onUsernameChanged: function () {
      console.log("-->"+ viewModel.name)
    }
  });
textfield如下所示

<TextField text="{{name}}" textChange="{{ onUsernameChanged }}"
                class="h2 description-label" />

通过查看您的代码,我推断视图(包含
文本字段
-假设您使用的是NativeScript Core)和视图模型(包含可观察
视图模型
的javascript文件)之间没有绑定

textChange
事件发出时,您正在ViewModel上反复打印存储值(
name
,在本例中为:
abcd
)。例如,开始时,您的值为
abcd
,但文本可能为空。稍后,您键入
A
,然后它再次打印
abcd
,依此类推

如果要打印新的文本输出TextField元素,必须使用事件发出的输出。请看这段摘录:

const viewModel=observableModule.fromObject({
名称:“abcd”,
onUsernameChanged:函数(eventData){
//eventData包含有关textChange事件的信息
console.dir(eventData);
//可以对这些数据执行任何操作,例如更新视图模型
}
});
尝试使用this.get()


如果我有一个有50个文本字段的表单。然后我想使用新输入的值,你的解决方案将是一个坏主意。想一想,我需要写多少关于变革的文章?正如我提到的,
getViewById
可以正常工作。但我需要一个数据观测的东西!(据我所知,Viewmodel是关于约束和遵守权利的)。我希望这能减轻我的工作。你在你的问题中根本没有这么说。给我们更多的上下文,给你一个更合适的解决方案。我的方法解决了您的
为什么更改的文本没有反映到ViewModel属性?
问题。好的,您所说的绑定是什么意思。您能否确切说明如何在
文本字段中执行此操作。我以为我是按照文件装订的。但是,你是说它没有绑定。我对你的说法感到困惑,我需要一个例子。
var view = require("ui/core/view");
var idUsername = view.getViewById(args.object, "idUsername");
console.log("-->"+ this.get('name'))