在我的Angular 7解决方案中,我在Microsoft Edge中的视图中存在数据绑定问题/其他浏览器(例如Opera,Chrome和Mozilla)正常工作/。 我的页面包含多个输入元素,例如文本框,下拉列表,单选按钮,日期选择器。在控制器/.ts文件/中的每个输入元素上都有onValueChange触发器,这些更改会立即生效,但视图不会更新。
我添加了双大括号表示法以在视图中显示当前值,但是该值为null / or old //,直到您单击下一个输入/而不是在每个输入上都单击-仅日期选择器或下拉列表/。 当我尝试在其他浏览器中进行检查时,在输入要输入的值后立即显示值。
我曾尝试为支持的浏览器基于angular官方网站添加多个polyfill,但没有帮助。
这是我的tsconfig.json和polyfills.ts:
{
"compileOnSave": false,
"compilerOptions": {
"baseUrl": "./",
"importHelpers": true,
"outDir": "./dist/out-tsc",
"sourceMap": true,
"declaration": false,
"module": "es2015",
"moduleResolution": "node",
"emitDecoratorMetadata": true,
"experimentalDecorators": true,
"target": "es2015",
"typeRoots": [
"node_modules/@types"
],
"lib": [
"es2017",
"dom"
]
}
}
/** IE9, IE10 and IE11 requires all of the following polyfills. **/
import 'core-js/es6/symbol';
import 'core-js/es6/object';
import 'core-js/es6/function';
import 'core-js/es6/parse-int';
import 'core-js/es6/parse-float';
import 'core-js/es6/number';
import 'core-js/es6/math';
import 'core-js/es6/string';
import 'core-js/es6/date';
import 'core-js/es6/array';
import 'core-js/es6/regexp';
import 'core-js/es6/map';
import 'core-js/es6/weak-map';
import 'core-js/es6/set';
/** IE10 and IE11 requires the following for the Reflect API. */
import 'core-js/es6/reflect';
// Used for browsers without a native support of Custom Elements
import '@webcomponents/custom-elements/custom-elements.min';
import '@ng-select/ng-select/bundles/ng-select.umd.min';
import 'web-animations-js'; // run `npm install --save web-animations-js`.
有什么方法可以使它在Edge上工作吗?
答案 0 :(得分:0)
尝试参考以下代码:
<input type="text" class="form-control" (input)="onSearchChange($event.target.value)"><br/>
<span>{{ name}}</span>
.ts文件:
export class AboutComponent implements OnInit {
name:string;
constructor() { }
ngOnInit() {
}
onSearchChange(searchValue : string ) {
console.log(searchValue);
this.name = searchValue;
}
}
它在我这一边(Edge 42.17134.1.0)工作得很好,就像这样:
如果仍然无法运行,是否可以像Minimal, Complete, and Verifiable example中那样发布足够的代码来重现该问题。并且,您还可以检查Edge浏览器版本。