首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >canjs findOne延迟

canjs findOne延迟
EN

Stack Overflow用户
提问于 2014-09-08 01:55:00
回答 1查看 253关注 0票数 1

我了解到,不用使用model.findAll和在findAll的回调函数中编写代码,我们可以通过使用新的model.List({})来实现这一点。例如,小提琴-> http://jsfiddle.net/CRZXH/48/ .在这个例子中,List实现可以工作,但是findOne失败了。

代码语言:javascript
复制
   var people = new Person.List({});

        return can.Component({
            tag: 'people',
            template: initView,
            scope: {
                people: people
                }
        })

上面的示例很好,最初分配给人的对象是空对象,但是在ajax调用了complete people变量之后,就会使用list更新和视图更新来更新它。

如何在findOne的情况下实现同样的功能?

代码语言:javascript
复制
 var person = PersonModel.findOne({});

    can.Component({
        tag: 'person',
        template: initView,
        scope: person
    })

这失败了..。

我确实做了如下的工作:

代码语言:javascript
复制
 var person;
    PersonModel.findOne({},function(data){
      person = data
    });

    can.Component({
        tag: 'person',
        template: initView,
        scope: person
    })

只有当我在asyn=false调用中添加findeOne时,这才能起作用。

EN

回答 1

Stack Overflow用户

发布于 2014-09-08 15:43:58

1- findOne的ID是强制性的

代码语言:javascript
复制
findOne({id: modelId})

2-您可以将person模型放到视图模型(AKA组件范围)中,而不通过值,为此使用can.stache插件和can.map.define插件。

代码语言:javascript
复制
can.fixture({
    "GET api/people":function(){
  return [
    {id: 1, name: "Person 1"},
    {id: 2, name: "Person 2"}
  ];
            },"GET api/people/{id}":function(request,response){
  return {id: request.data.id, name: "Person "+request.data.id}
}
});

can.Model.extend('Person',{
     findAll: 'GET api/people',
    findOne: 'GET api/people/{id}',
},{});

can.Component.extend({
    tag:'x-person',
    scope:{
        define:{
            person:{
                get:function(currentPerson,setFn){
                    Person.findOne({id: 2}, setFn);
                }
            }

        }
    }

});

var frag=can.view('personTmpl',{});

$('#main').html(frag);

这是小提琴b/egq85zva/

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25716480

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档