当前位置: 首页 > 面试题库 >

酶-如何访问和设置 值?

倪灿
2023-03-14
问题内容

我对使用<input>时如何获取价值感到困惑mount。这是我的测试内容:

  it('cancels changes when user presses esc', done => {
    const wrapper = mount(<EditableText defaultValue="Hello" />);
    const input = wrapper.find('input');

    console.log(input.render().attr('value'));
    input.simulate('focus');
    done();
  });

控制台将输出undefined。但是,如果我稍微修改一下代码,它就会起作用:

  it('cancels changes when user presses esc', done => {
    const wrapper = render(<EditableText defaultValue="Hello" />);
    const input = wrapper.find('input');

    console.log(input.val());
    input.simulate('focus');
    done();
  });

当然,除了那input.simulate行因为我现在正在使用而失败render。我都需要正常工作。我该如何解决?

编辑

我应该提到,<EditableText />不是受控组件。但是当我defaultValue进入时<input />,似乎设置了值。上面的第二个代码块确实打印出了该值,同样,如果我在Chrome中检查了输入元素并$0.value在控制台中键入,它将显示期望的值。


问题答案:

得到它了。(更新/改进版本)

  it('cancels changes when user presses esc', done => {
    const wrapper = mount(<EditableText defaultValue="Hello" />);
    const input = wrapper.find('input');

    input.simulate('focus');
    input.simulate('change', { target: { value: 'Changed' } });
    input.simulate('keyDown', {
      which: 27,
      target: {
        blur() {
          // Needed since <EditableText /> calls target.blur()
          input.simulate('blur');
        },
      },
    });
    expect(input.get(0).value).to.equal('Hello');

    done();
  });


 类似资料:
  • 使用命令创建访问策略时,出现错误:操作失败,因为“密钥存储库”从操作开始时开始更改。控件执行并行操作时,可能会发生这种情况。若要防止此错误,请序列化操作,以便一次只对。有关详细信息,请参阅此链接:https://go.microsoft.com/fwlink/?linkid=2147741.

  • 问题内容: 如何从项目管道访问settings.py中的scrapy设置。文档中提到可以通过扩展程序中的搜寻器访问它,但是我看不到如何在管道中访问搜寻器。 问题答案: 从内部访问Scrapy设置(如中所定义)的方法很简单。所有其他答案都太复杂了。原因是对Scrapy文档的维护非常差,加上许多最新的更新和更改。在“设置”文档“ 如何访问设置 ”中,或者在“设置API”中,都没有给出任何可行的示例。这

  • 问题内容: 我正在尝试检索JSP页面中servlet设置的属性值,但是我对参数by的运气还不错。我不确定该怎么做。也许它很简单,但是我还无法处理。 在JSP中,我一直试图检索“ attribValue”,但是没有成功: 如果我在所有过程(调用页面,servlet和目标页面)中都传递了一个参数,则它的效果很好。 问题答案: 它已经在默认的EL范围内可用,因此 应该做。 如果您想明确指定范围(EL将依

  • 假设出现如下情况: 每个用户可以有一个角色。每个角色都可以访问许多功能。我为每个角色设计了保存和检索访问矩阵的部分。所以我知道哪个角色应该访问哪些功能,它被保存在一个名为roles_features的表中。 我是否必须编写自己的函数来检查该角色是否允许路由。注意:我不想使用文件; 我想知道是否存在任何预定义的,它为每个角色和链接返回优化的访问控制方式,或者我必须实现我的; 正如我所写的,我不想使用

  • 你可能知道什么是Android Shared Preferences。可以通过Android框架简单存储的一系列key和value对。这些preferences与SDK的一部分融为一体,使得任务变得更加容易。而且从Android 6.0(Marshmallow),shared preferences可以自动被云存储,所以当一个用户在一个新的设备上面恢复App的时候,它们的preferences也会

  • 问题内容: 假设我正在使用以下网页: 我的Greasemonkey脚本是: 在禁用Greasemonkey脚本的情况下,单击页面上的元素将显示“ hello”警报。启用脚本后,单击元素将显示“再见”警报。 很简单。网页中的功能已被Greasemonkey脚本中的功能替换。 现在,假设我要使用Greasemonkey API。当我将值设置为’none’以外的有效值时(例如)[这会导致Greasemo