Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ember.js/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 余烬中的单向绑定输入?_Javascript_Ember.js - Fatal编程技术网

Javascript 余烬中的单向绑定输入?

Javascript 余烬中的单向绑定输入?,javascript,ember.js,Javascript,Ember.js,Ember的默认{{input}}助手创建一个双向绑定。创建仅单向绑定的输入元素的最先进方法是什么 谷歌搜索“余烬单向输入”会产生几个附加组件: 但是我需要一个附加组件吗?我相信你可以在oneWay()helper的帮助下实现这一点。检查以下链接 来自余烬指南的示例代码 user = Ember.Object.create({ fullName: 'Kara Gates' }); UserComponent = Ember.Component.extend({ userNa

Ember的默认
{{input}}
助手创建一个双向绑定。创建仅单向绑定的输入元素的最先进方法是什么

谷歌搜索“余烬单向输入”会产生几个附加组件:


但是我需要一个附加组件吗?

我相信你可以在
oneWay()
helper的帮助下实现这一点。检查以下链接

来自余烬指南的示例代码

user = Ember.Object.create({
  fullName: 'Kara Gates'
});

UserComponent = Ember.Component.extend({
  userName: Ember.computed.oneWay('user.fullName')
});

userComponent = UserComponent.create({
  user: user
});

// Changing the name of the user object changes
// the value on the view.
user.set('fullName', 'Krang Gatessss');
// userComponent.userName will become "Krang Gatessss"

// ...but changes to the view don't make it back to
// the object.
userComponent.set('userName', 'Truckasaurus Gates');
user.get('fullName'); // "Krang Gatessss"

input helpers
默认情况下使用双向绑定

实现单向行为有不同的备选方案:

  • 呈现您自己的html
    input
    标记:
  • 创建标记名为
    input
    的无模板组件:
  • 使用你提到的插件

  • 最简单的方法是使用普通html
    而不是
    {{input}
    帮助程序:

    <input value={{foo}} />
    
    
    
    如果你想触发一项针对变化的行动:

    <input value={{foo}} onchange={{action 'changeFoo' value="target.value"}} />
    
    
    

    这是单向绑定,并按预期工作。

    单向绑定不需要加载项-


    但我想说的是,我发现在日常开发中非常有用。

    当您在文本字段中键入时,它会更新
    user.fullName
    ?我怀疑不会。