首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >找不到具有Ember Validations插件的"presence“验证器

找不到具有Ember Validations插件的"presence“验证器
EN

Stack Overflow用户
提问于 2015-05-27 14:29:11
回答 1查看 726关注 0票数 0

我正在尝试使用Ember Validations插件,但我无法使其正常工作。在Chrome控制台中,我看到:警告:无法找到"presence“验证器。

这是我的模型:

代码语言:javascript
复制
import Ember from 'ember';
import DS from 'ember-data';
import EmberValidations from 'ember-validations';

export default DS.Model.extend(EmberValidations.Mixin, {
  name: DS.attr('string'),

  validations: {
    name: {
      presence: true
    }
  }
});

下面是我的测试:

代码语言:javascript
复制
import Ember from 'ember';
import EmberValidations from 'ember-validations';
import { moduleForModel, test } from 'ember-qunit';

moduleForModel('person', 'Unit | Model | person', {
  // Specify the other units that are required for this test.
  needs: ['ember-validations@validator:local/presence'],
  afterEach: function() {
    window.sessionStorage.clear();
  }
});

test('isValid should be false if name is not set', function(assert) {
  stop();
  var model = this.subject();
  console.log(model);
  Ember.run(function() {
    sinon.spy(model, 'save');
    model.validate().then(function() {
      start();
      assert.equal(model.get('isValid'), false);

    });
  });
});

此测试的结果为:

在测试#1在Object.test (http://localhost:4200/assets/test-support.js:1644:11)在http://localhost:4200/assets/myproj.js:14450:15在mod.state (http://localhost:4200/assets/vendor.js:150:29)在tryFinally (http://localhost:4200/assets/vendor.js:30:14)在requireModule (http://localhost:4200/assets/vendor.js:148:5)在Object.TestLoader.require (http://localhost:4200/assets/test-loader.js:29:9)在Object.TestLoader.loadModules (http://localhost:4200/assets/test-loader.js:21:18):<(未知混合):ember848>

EN

回答 1

Stack Overflow用户

发布于 2015-05-27 19:13:53

您需要向ember-validations docs in testing part中定义的测试套件添加依赖项。但是,请注意这些文档有点过时了。正确的needs应该只包含您使用的验证器(presence),如下所示:

代码语言:javascript
复制
needs: ['ember-validations@validator:local/presence']

不要包含service:validations

我很久以前就发布了an issue,但是还没有被讨论过。

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

https://stackoverflow.com/questions/30474762

复制
相关文章

相似问题

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