为什么Pouchdb错误在_design文档中时没有命名视图?

问题描述

我已经在Pouchdb中设置了一个视图。并对其查询,我得到一个错误,即找不到名为“ personnel”的视图。当我查看视图文档时,我发现带有名为“ personnel”的视图的“ _design / personnel”文档。我已经搜索了Googles和Pouchdb文档,但没有找到解决方案。有谁知道为什么这行不通?

var ddoc = {
  _id: '_design/personnel',views: {
    personnel: {
      map: function (doc) {
        if (doc.PrimeWorkOrderNum) {
          emit(doc.PrimeWorkOrderNum,{name: doc.EmployeeName,empId: doc.EmployeeID});
        }
      }.toString()
    }
  }
}

pouch.put(ddoc).then(function () {
  // success!
}).catch(function (err) {
  // some error (maybe a 409,because it already exists?)
});

然后我尝试针对该视图运行查询

this.findPersonnelByJobId = function(jobId){
      console.log(jobId);
      return db.query('personnel',{
        key: jobId,include_docs: true
      });

当我调用findPersonnelByJobId()时,我得到了错误

NotFoundError {status: 404,name: "not_found",message: "ddoc _design/personnel has no view named 
personnel",error: true,stack: "not_found: ddoc _design/personnel has no view name…    at http://127.0.0.1:9000/dist/app.js:66114:17"}
error: true
message: "ddoc _design/personnel has no view named personnel"
name: "not_found"
status: 404
stack: "not_found: ddoc _design/personnel has no view named personnel↵    at http://127.0.0.1:9000/dist/app.js:66114:17"
__proto__: Error

当我查找视图文档时发现:

{_id: "_design/personnel",views: {…}}
views:
personnel:
map: "function (doc) {
↵            if (doc.PrimeWorkOrderNum) 

该对象插入了视图:

var ddoc = {
  _id: '_design/personnel',empId: doc.EmployeeID});
        }
      }.toString()
    }
  }
}

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)