小编Whe*_*ard的帖子

获取knockout.js自定义组件内容

我想在knockout.js中创建一个自定义组件.

HTML

<demo-widget>TEXT NEEDED</demo-widget>
Run Code Online (Sandbox Code Playgroud)

使用Javascript

ko.components.register('demo-widget', {
    template: '<div>New Text</div>'
});

ko.applyBindings();
Run Code Online (Sandbox Code Playgroud)

该组件加载精细和一切,但我现在想要做的是能够获得原始自定义组件标记内的任何内容(例如"文本需要"文本).

知道我怎么能这样做吗?希望我能够清楚地解释清楚.

这是一个小提琴:http://jsfiddle.net/WhesleyBarnard/f7bmynp5/5/

knockout.js knockout-components

7
推荐指数
1
解决办法
654
查看次数

内部像在lodash合并

我试图在node.js中与lodash进行对象合并.合并很有效,因为它不会覆盖导致未定义的属性对象.

但是,我希望它的方法只覆盖目标对象中存在的对象.见下面的例子:

var e1 = {
    name: 'Jack',
    surname: 'Root'
};
Run Code Online (Sandbox Code Playgroud)

合并

var e2 = {
    name: 'Rex',
    surname: undefined,
    age: 24
};
Run Code Online (Sandbox Code Playgroud)

目前的结果:

{
    name: 'Rex',
    surname: 'Root',
    age: 24
}
Run Code Online (Sandbox Code Playgroud)

结果我想:

{
name: 'Rex',
surname: 'Root'
}
Run Code Online (Sandbox Code Playgroud)

所以我想要获得的是源对象只覆盖两者中存在的属性,并且只有在它们未被定义时才会被覆盖.

我尝试搜索其他函数,但只发现mergeassign来做类似的事情.但唉,这不完全是我想要的.

这背后的整个想法是构建一些方法,从Web表单获取对象字段,然后将它们绑定到mongoose.js模型对象以进行持久化.

这是为了避免总是必须手动将每个属性绑定到另一个对象.

javascript merge node.js lodash

5
推荐指数
1
解决办法
610
查看次数