我刚刚运行了代码 npm install --save @angular/material @angular/animations.
它是我的package.json
{
"name": "cerpnew",
"version": "0.0.0",
"license": "MIT",
"scripts": {
"ng": "ng",
"start": "ng serve",
"build": "ng build",
"test": "ng test",
"lint": "ng lint",
"e2e": "ng e2e"
},
"private": true,
"dependencies": {
"@angular/animations": "^4.4.6",
"@angular/common": "^4.2.4",
"@angular/compiler": "^4.2.4",
"@angular/core": "^4.2.4",
"@angular/forms": "^4.2.4",
"@angular/http": "^4.2.4",
"@angular/material": "^2.0.0-beta.12",
"@angular/platform-browser": "^4.2.4",
"@angular/platform-browser-dynamic": "^4.2.4",
"@angular/router": "^4.2.4",
"@types/angular-material": "^1.1.54",
"angular-2-dropdown-multiselect": "^1.6.0",
"angular-2-local-storage": "^1.0.1",
"bootstrap": "^3.3.7",
"bootstrap-select": "^1.12.4",
"core-js": "^2.4.1",
"jquery": "^3.2.1",
"ng-checkbox": "^1.0.2",
"ng2-bootstrap-modal": "^1.0.1",
"ng2-daterangepicker": "^2.0.10",
"react-datepicker": "^0.55.0", …Run Code Online (Sandbox Code Playgroud) 在我的项目中,ng-keypress不适用于来自所有地方的"输入密钥".从某些地方来看,它工作得非常好,但是从其他地方来看,它适用于除"输入密钥"之外的所有密钥.
这里我在ng-keypress上调用了一个test()方法.
<div class="actions">
<div class="ui approve button red" data-ng-click="test()" id="confirm-yes" tabindex="8" ng-keypress="test()">Yes</div>
<div class="ui cancel button" data-ng-click="test()" id="confirm-no" tabindex="7" ng-keypress="test()">Cancel</div>
</div>
Run Code Online (Sandbox Code Playgroud)
从测试方法来看,我只是展示了密钥代码.除了Enter之外,我可以正确地看到所有其他按键的键码.
$scope.test = function () {
alert('test called'+event.keyCode);
}
Run Code Online (Sandbox Code Playgroud)
我已经阅读了很多StackOverflow文章,我确信它的语法是正确的但我对它的奇怪行为感到困惑.
知道为什么ng-keypress不能用于输入,它适用于所有其他键.