5

我有点麻烦,因为我找不到资源和/或教程来让我有足够的知识如何正确地做到这一点:

我正在根据联系人数据库构建一个 Couchapp。为此,我需要在登录页面上有一个无序列表的联系人(只有姓名)。在检查了很长一段时间并检查了http://kansojs.org框架之后,我想我可能不得不在 Stackoverflow 上询问这是如何正确完成的......

这是我最终得到的(不工作):

我开始设置视图(文件 'views/contactslist/map.js ):

function(doc) {
  if (doc.displayName) {
    emit(doc.displayName, {displayname: doc.displayName});
  }
};

...这基本上给了我这个回应:

{"total_rows":606,"offset":0,"rows":[
{{"id":"478d86edbbd94bbe627f3ebda309db7c","key":"Al Yankovic","value":{"displayname":"Al Yankovic"}},
{"id":"478d86edbbd94bbe627f3ebda30bb5cb","key":"Al-Qaeda","value":{"displayname":"Al-Qaeda"}}
]}

之后,我在 evently 目录中创建了一个新目录“contacts”,并创建了文件“mustache.html”、“data.js”和“query.json”:

小胡子.html:

<ul>
  {{#contacts}}
    <li>
        <div class="name">
          {{displayname}}
        </div>
      <div style="clear:left;"></div>
    </li>
  {{/contacts}}
</ul>

数据.js:

function(data) {
  $.log(data)
  var p;
  return {contacts : data.rows};
};

查询.json:

{
  "view" : "contactslist",
  "descending" : "true"
}

然后我添加了 $("#contacts").evently("contacts", app); 到 _attachments 目录中的 index.html。

在 Firebug 中观看控制台,我看不到 CouchDB 的任何请求/响应返回我的 vie 的结果,所以我认为它甚至没有被请求。我在哪里走错了路?

4

2 回答 2

2

data.js、query.json 和 mustache.html 需要在 evently/contacts/_init/

_init 意味着这将在小部件初始化时执行。

于 2011-02-14T14:38:10.110 回答
1

阅读本教程有很大帮​​助。

于 2011-02-14T19:05:05.583 回答