【发布时间】:2016-05-19 03:33:30
【问题描述】:
我有一个自定义组件,我想向它传递一个对象,我该怎么做?传递字符串很容易,但我无法发送任何可观察到的东西。
main-page.js
exports.onInit = function(args) {
var page = args.object;
var pageData = new Observable();
page.bindingContext = pageData;
pageData.set('customObject', {label: 'This is my Label'});
// I've tried Observable as well, same undefined
// pageData.set('customObject', new Observable({label: 'This is my Label'}));
}
main-page.xml
<Page xmlns:customOtherControls="xml-declaration/mymodulewithxml">
<customOtherControls:MyControl myString="Works fine" myObject="{{customObject}}" />
<StackLayout>
<Label text="{{customObject.label}}" />
</StackLayout>
</Page>
mymodulewithxml.xml
<StackLayout loaded="onMymodulewithxmlInit">
<Label text="{{myString}}" />
<Label text="{{myObject.label}}" />
</StackLayout>
mymodulewithxml.js
function onMymodulewithxmlInit(args) {
console.log('myString', page.myObject); // "Works fine"
console.log('myObject', page.myObject); // undefined
}
【问题讨论】:
标签: javascript data-binding custom-component nativescript