在chrome上,当用户单击"清除"按钮时,会在搜索输入上触发"搜索"事件.
有没有办法在Internet Explorer 10上的javascript中捕获相同的事件?

我使用create-app-component创建了一个项目,它使用构建脚本(babel,webpack,jest)配置新的应用程序.
我写了一个我正在尝试测试的React组件.该组件需要另一个javascript文件,公开一个函数.
我的search.js文件
export {
search,
}
function search(){
// does things
return Promise.resolve('foo')
}
Run Code Online (Sandbox Code Playgroud)
我的反应成分:
import React from 'react'
import { search } from './search.js'
import SearchResults from './SearchResults'
export default SearchContainer {
constructor(){
this.state = {
query: "hello world"
}
}
componentDidMount(){
search(this.state.query)
.then(result => { this.setState({ result, })})
}
render() {
return <SearchResults
result={this.state.result}
/>
}
}
Run Code Online (Sandbox Code Playgroud)
在我的单元测试中,我想检查是否search使用正确的参数调用了该方法.
我的测试看起来像这样:
import React from 'react';
import { shallow } from 'enzyme';
import should from 'should/as-function'; …Run Code Online (Sandbox Code Playgroud) 我有一个使用protobuf-net序列化/反序列化的复杂模型,我们有几个错误,这个"功能"没有序列化默认值.
例:
[DataContract]
class Foo{
public Foo(){
// Value forced by constructor
this.Value = 1;
}
// Buggy, when Value is set to zero
[DataMember(Order = 1)]
public double Value {get; set}
}
Run Code Online (Sandbox Code Playgroud)
当Value = 0时,它不是由protobuf-net序列化的,但在反序列化期间,构造函数强制Value为1(并且protobuf-net不会改变它).
为了使它工作,我需要强制protobuf-net序列化值,用:
// Works fine
[DataMember(Order = 1, IsRequired = true)]
public double Value {get; set}
Run Code Online (Sandbox Code Playgroud)
但是,由于我们已经因为这个功能而出现了错误,我们希望为整个模型强制使用protobuf-net ,而不是标记每个属性.
可能吗?
我有一个基本的需求,我想用路线来解决:
我的问题是,第一次显示Web应用程序时,用户似乎被正确重定向,因为URI是正确的,但不是显示的视图(它对应于默认视图).
我已经为此创建了一个jsbin,如果你更愿意看到它是真的.该结果可以在这里看到.
重现步骤:
needsAuth即使URI包含登录(对应于视图login),也会显示视图的内容loginHTML代码:
<!DOCTYPE html>
<html ng-app='app'>
<head>
<script src="//ajax.googleapis.com/ajax/libs/angularjs/1.3.2/angular.js"></script>
<script src="//ajax.googleapis.com/ajax/libs/angularjs/1.3.2/angular-route.js"></script>
<meta charset="utf-8">
<title>JS Bin</title>
</head>
<body>
<div ng-view>
</div>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
这是javascript代码:
var template = '{{vm.text}}';
angular
.module('app', ['ngRoute'])
.config(['$routeProvider', routes])
.controller('needsAuthController', needsAuthController)
.controller('loginController', loginController)
.run(['$rootScope', '$location', registerRedirection]);
function routes($routeProvider){
$routeProvider
.when('/needsAuth', {
controller: 'needsAuthController',
controllerAs: 'vm',
template: template
})
.when('/login', {
controller: 'loginController', …Run Code Online (Sandbox Code Playgroud) javascript ×3
angularjs ×1
c# ×1
events ×1
html-input ×1
jestjs ×1
mocking ×1
protobuf-net ×1
reactjs ×1
unit-testing ×1