我知道我们可以在角度中执行点击事件,例如ng-click="clickMe()"
。但我刚刚通过了一些示例。$event
就像ng-click="clickMe()"
一样传递给了$event
。为什么我们需要通过ng-click="clickMe()"
?
ng-click="clickMe($event)"
和getUsers = (input) => {
console.log(input);
if (!input) {
return Promise.resolve({ options: [] });
}
if (input.length > 2) {
const newstate = this.state;
newstate.loadingtext = 'Searching...';
this.setState({ newstate });
const searchLocation = Object.assign({}, cookie.load('cLocation'));
searchLocation.searchText = input;
searchLocation.isBusiness = false;
console.log(input.toString().length);
return fetch(sourceName.searchNavbar, apiUrl.locationAndBusiness,
searchLocation)
.then(json => ({ options: json.data }));
}
return null;
}
之间有什么区别?
请任何人解释。
答案 0 :(得分:1)
你不需要,大部分时间你都不应该这样做。从javascript中的所有点击中,都有一个Event
- 对象可用。 $ event恰好是在javascript中访问这些内容的方式。
如果您对这些活动感兴趣,可以试试这个(不是真的相关但很有用),如果您使用的是chrome dev-tools,请检查来源 -tab,然后选择右侧你有手表和断点。 " 事件监听器断点"还有一个下拉列表。在那里,你会发现很多可能的事件。
尝试选中" 鼠标"的复选框。 - > " 点击强>"例如,然后单击页面上的某个位置。脚本将暂停(很可能在jquery中的某个位置),您可以直接在范围下拉列表下检查mouseevent。
答案 1 :(得分:1)
$event
ngClick和ngFocus等指令会公开$ event对象 在该表达式的范围内。该对象是一个实例 当jQuery存在或类似的jqLite对象时jQuery Event Object。
使用此对象,您可以使用各种属性和功能来帮助您管理事件处理。
例如:
event.stopPropagation()
阻止事件冒泡DOM树,防止任何父处理程序收到事件通知。