小编Dor*_*don的帖子

没有Ember Data的Ember

Ember数据仍未达到版本1.0,因此我决定使用Ember而不使用Data模型.

我有自己的模型,这些模型由路径模型函数创建.

但是,保持前端对象和后端对象之间的状态是一场噩梦.特别是当一条路线使用其他路线模型时.

  • 如果我自己创建商店和模型查找方法,怎么能实现呢?
  • 我应该使用Ember Data(即使它不是1.0版本吗?)也许是Ember Data 1.0上的ETA?
  • 每当我更改模型时,编写代码来更新前端的模型?
  • 另一种方法?

我正在做最好的做法,还是我应该采取不同的做法?我的直觉是,如果不使用Ember Data,我应该写自己的商店.我很乐意收到你们中的一些人的反馈.

模型示例:

App.Person = Ember.Object.extend(App.Serializable,Em.Copyable,{
  user_email : null //used in routing dynamic segements and as old email when making changes to email
  ,first_name: null
  , last_name: null
  , fullname : function () {
    return this.first_name + ' ' + this.last_name;
  }.property('first_name','last_name').cacheable()
};

App.Person.reopenClass({
  createRecord: function(data) {
    return App.Person.create({
      user_email : data.email
      , first_name: data.first_name
      , last_name : data.last_name
}});
Run Code Online (Sandbox Code Playgroud)

我如何加载类模型的示例:

App.UsersRoute = App.AuthenticatedRoute.extend( {
  model : function () { …
Run Code Online (Sandbox Code Playgroud)

javascript model-view-controller ember.js ember-data

13
推荐指数
1
解决办法
3003
查看次数

JavaScript承诺mongoose和bluebird缺少捕获和失败

我已经开始使用promises,我使用Node.js Mango(带有mongoose)和bluebird ..我遇到的问题是由于某种原因,当我用返回promises的函数链接mongoose调用时(我假设这是正确的)返回和链的方式)然后我得到:

typeError: Object #<Promise> has no method 'fail'
Run Code Online (Sandbox Code Playgroud)

如果我改变了捕获的失败,那么我得到同样的问题:

typeError: Object #<Promise> has no method 'catch'
Run Code Online (Sandbox Code Playgroud)

我所做的是使用函数(null,function)模式,它完全失败并捕获.然而,捕获/失败更具可读性.任何线索为什么我得到这个以及我应该如何解决这个问题?

这是代码块的示例.

User.findOne({ 'email' :  user_email }).exec()
 }).then (promisedTransformUserSchemaToFrontendObjectWithProjectMapping)
   .then (function (feUser) {
       return new Promise(function (resolve, reject) {
          res.json(feUser);
          return resolve(feUser);
      });
   }).fail/catch  (function (err) {
      console.log(err);
      sendError(res,"failed to get user",err);
   });
Run Code Online (Sandbox Code Playgroud)

这是堆栈跟踪:

TypeError: Object #<Promise> has no method 'catch'
    at module.exports.app.put.User.update.email (app\controllers\router.js:165:16)
    at callbacks (node_modules\express\lib\router\index.js:164:37)
    at isLoggedIn (app\controllers\router.js:741:10)
    at callbacks (node_modules\express\lib\router\index.js:164:37)
    at param (node_modules\express\lib\router\index.js:138:11)
    at param (node_modules\express\lib\router\index.js:135:11)
    at pass (node_modules\express\lib\router\index.js:145:5) …
Run Code Online (Sandbox Code Playgroud)

javascript mongoose mongodb node.js promise

8
推荐指数
2
解决办法
7972
查看次数

AirBnB node.js有多稳定?

我想知道是否有人一直在使用AirBnB Rendr并且它是否稳定且可以在商业项目中使用,或者它是否仍在改变很多?

我正在开发一个可以运行基于客户端和服务器的网站,这意味着我需要能够基于服务器和客户端呈现页面和小部件.

服务器正在运行Node.js,dust.js,并具有基于自定义服务器的代码,用于在服务器端呈现页面和小部件.我需要选择如何在客户端处理它.当然我想尝试而不是重复代码,但显然客户端是不同的我可以:

  1. 保持我当前基于页面的服务器呈现并开发自定义客户端代码.
  2. 在客户端使用backbone.js并保持基于服务器的代码相同.
  3. 使用基于Node.js和骨干的AirBnB rendr在客户端和服务器上使用相同的代码.AirBnB Rendr图书馆

我非常喜欢第三个想法,但我正在寻找你们的一些意见.有人用过吗?在稳定性和/或他们的api变化频率等方面有任何经验吗?

template-engine node.js express backbone.js rendr

7
推荐指数
2
解决办法
3484
查看次数

扩展NLP实体提取

我们想从一个简单的搜索社区和各个城市的街道中进行识别。我们不仅使用英语,还使用其他西里尔语言。我们需要能够识别位置的拼写错误。在查看python库时,我发现了这个库:http : //polyglot.readthedocs.io/en/latest/NamedEntityRecognition.html

我们尝试使用它,但是找不到扩展实体识别数据库的方法。那怎么办?
如果不是,那么对于多语言nlp是否有其他建议,可以帮助进行拼写检查并提取与自定义数据库匹配的各种实体?

python nlp machine-learning polyglot named-entity-extraction

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

EndDialog vs DestroyWindow

我正在创建Windows上下文菜单的模仿.

显示对话框执行以下操作:

  1. 使用创建对话框 CreateDialogIndirectParam
  2. 运行消息循环:

    while ( ContinueModal() && GetMessage(&msg, NULL, 0, 0) )
    {
        TranslateMessage( &msg );
        DispatchMessage( &msg );
    }
    
    Run Code Online (Sandbox Code Playgroud)
  3. 我在新窗口中寻找丢失焦点事件的对话框,我将ContinueModel标志设置为false并调用EndDialog/ DestroyWindow.

    • 调用EndDialog不会杀死我的对话框DestroyWindow.这没关系,任何人都可以解释原因吗?

谢谢!D.

c++ windows winapi win32gui windows-messages

2
推荐指数
1
解决办法
4038
查看次数

你如何模拟 useDebounce ?

所有模拟尝试都会产生错误:

import useDebounce from 'use-debounce'
jest.mock('use-debounce')

TypeError: (0 , _useDebounce.useDebounce) is not a function or its return value is not iterable
Run Code Online (Sandbox Code Playgroud)

尝试仅针对该模拟也失败:

jest.mock('use-debounce',() => {
  return {
    useDebounce: jest.fn(value => [value])
  }
})
Run Code Online (Sandbox Code Playgroud)

也给出了同样的错误。使用模拟计时器也不起作用。

javascript debouncing jestjs react-testing-library react-hooks

2
推荐指数
1
解决办法
1826
查看次数