即时更新珊瑚礁部分

我开始深入挖掘珊瑚礁,我磕磕绊绊,我真的不知道如何解决...... 我有一个RETextField和一个REButton,我希望按下按钮时文本字段的内容会更新,所以这就是我正在尝试的内容:
initializeContents
    self
        add:
            ((RETextField new)
                id: 'myTextField';
                on: #textFieldContents of: self).
    self
        add:
            ((REButton new)
                label: 'Try me!';
                callback: [ 
                    self triggerThenDo: [
                        textFieldContents := textFieldContents , ' and something else']).
这不起作用,因为我应该告诉文本字段更新,所以我试过:
initializeContents
    self
        add:
            ((RETextField new)
                id: 'myTextField';
                on: #textFieldContents of: self).
    self
        add:
            ((REButton new)
                label: 'Try me!';
                callback: [ 
                    self triggerThenDo: [
                        textFieldContents := textFieldContents , ' and something else'.
                        (self canvas jQuery: '#myTextField') 
                            load html: 
                               [ :h | h text: textFieldContents ] ] ])
但它也没有用......也试过
self canvas jQuery ajax script: etc.
没有运气。 我猜Reef有自己优雅的方式来做这件事,但我找不到任何地方......某人? :)     
已邀请:
在创建Reef组件时,您需要考虑只能触发表单和表单小部件。在您的第一个示例中,它应该适用于您的组件是REForm的子组件。像这样的东西:
REForm subclass: #MyForm
    instanceVariableNames: 'textFieldContents'
    classVariableNames: ''
    poolDictionaries: ''
    category: 'ReefSample1-View'.

textFieldContents
    ^textFieldContents

textFieldContents: aString
    textFieldContents := aString

initializeContents 
    self add: (RETextField new 
        on: #textFieldContents of: self).
    self add: (REButton new 
        label: 'Try me!';
        callback: [ self triggerThenDo: [ self inform: self textFieldContents ]]).
......应该正常工作。另外,请记住您的Reef应用程序需要使用特殊机制进行注册:
REApplication 
    registerAsApplication: 'name'
    root: MyRootComponent 
此注册添加了所有库依赖项,并使用调度程序装饰您的应用程序以管理ajax请求。     

要回复问题请先登录注册