- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个通过 getter 访问的 FormControl。当我运行我的单元测试时,我收到一条错误消息:
Error: No value accessor for form control with name: 'myMobileNumber'
下面是我的组件和规范文件:
我的组件.ts
export class MyComponent implements OnInit {
myFormGroup: MyFormGroup;
constructor(...) {
}
get myMobileNumber() {
return this.myFormGroup.get('myMobileNumber') as FormControl;
}
ngOnInit() {
this.myFormGroup = new MyFormGroup();
this.myMobileNumber.patchValue('');
}
}
MyComponent.html
<ngx-intl-tel-input
...
formControlName="myMobileNumber">
</ngx-intl-tel-input>
<div
*ngIf="myMobileNumber.invalid && (myMobileNumber.dirty || myMobileNumber.touched)">
<small *ngIf="myMobileNumber.errors" class="text-danger" i18n>Mobile number is
invalid.</small>
</div>
MyComponent.spec.ts
describe('Component: MyComponent', () => {
let component: MyComponent;
let fixture: ComponentFixture<MyComponent>;
beforeEach(async(() => {
TestBed.configureTestingModule({
declarations: [ MyComponent ],
imports: [ HttpClientTestingModule, FormsModule, ReactiveFormsModule, RouterTestingModule, NgbModule, ],
providers: [
NgbActiveModal,
]
})
.compileComponents();
}));
beforeEach(() => {
fixture = TestBed.createComponent(MyComponent);
component = fixture.componentInstance;
component.myFormGroup = new MyFormGroup();
component.myMobileNumber.setValue('');
fixture.detectChanges();
});
it('should create', () => {
expect(component).toBeTruthy();
});
});
我明白了
Error: No value accessor for form control with name: 'myMobileNumber'
at _throwError (http://localhost:9876/_karma_webpack_/webpack:/node_modules/@angular/forms/fesm2015/forms.js:2384:1)
at setUpControl (http://localhost:9876/_karma_webpack_/webpack:/node_modules/@angular/forms/fesm2015/forms.js:2286:1)
at FormGroupDirective.addControl (http://localhost:9876/_karma_webpack_/webpack:/node_modules/@angular/forms/fesm2015/forms.js:5459:1)
at FormControlName._setUpControl (http://localhost:9876/_karma_webpack_/webpack:/node_modules/@angular/forms/fesm2015/forms.js:6037:1)
at FormControlName.ngOnChanges (http://localhost:9876/_karma_webpack_/webpack:/node_modules/@angular/forms/fesm2015/forms.js:5968:1)
at FormControlName.rememberChangeHistoryAndInvokeOnChangesHook (http://localhost:9876/_karma_webpack_/webpack:/node_modules/@angular/core/fesm2015/core.js:2197:1)
at callHook (http://localhost:9876/_karma_webpack_/webpack:/node_modules/@angular/core/fesm2015/core.js:3109:1)
at callHooks (http://localhost:9876/_karma_webpack_/webpack:/node_modules/@angular/core/fesm2015/core.js:3075:1)
at executeInitAndCheckHooks (http://localhost:9876/_karma_webpack_/webpack:/node_modules/@angular/core/fesm2015/core.js:3027:1)
at selectIndexInternal (http://localhost:9876/_karma_webpack_/webpack:/node_modules/@angular/core/fesm2015/core.js:6264:1)
我不完全确定为什么会这样,而且我在 Stackoverflow 中找不到具有类似设置的问题。
如有任何帮助或建议,我们将不胜感激。谢谢。
最佳答案
将 ngx-intl-tel-input 组件导入您的测试服。或者您可以在自定义元素中添加 ngDefaultControl 属性,如下所示;
<ngx-intl-tel-input
...
formControlName="myMobileNumber" ngDefaultControl>
</ngx-intl-tel-input>
关于 Angular 单元测试(带 Getter): Error: No value accessor for form control with name,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67665352/
关闭。这个问题是opinion-based .它目前不接受答案。 想要改进这个问题? 更新问题,以便 editing this post 可以用事实和引用来回答它. 关闭 5 个月前。 Improv
我正在尝试 Moose 示例: has 'options' => ( traits => ['Hash'], is => 'rw', isa
我有这个 HTML: And (Narrower search) Or (Wider search) 我收到此错误: Error: No va
使用 AngularDart Material 包。确实可以对这个错误使用一些帮助: "No value accessor for (username) or you may be missing f
考虑一个名为“rotate”的潜在实例方法,该方法通过交换 Rectangle 对象的宽度和高度值将其旋转 90 度。例如,如果矩形的尺寸为 10 x 30,则调用旋转方法会将其尺寸更改为 30 x
我正在编写一个程序,我需要为变量 accountID 创建访问器/修改器方法。这是我到目前为止所拥有的,但是当我创建访问器 public int getAccountID() 时,我无法克服这个“无法
在 section 4.3.26标准 ECMA-262 版本: Depending upon the form of the property the value may be represented
关闭。这个问题是opinion-based .它目前不接受答案。 想要改进这个问题? 更新问题,以便 editing this post 可以用事实和引用来回答它. 关闭 7 年前。 Improve
考虑这个简单的代码: class Yeah attr_reader :foo attr_reader :fool attr_reader :feel def initialize(fo
我有很多类有很多这样的属性: public AnyClass[] car { get { return this.anyClassField; }
我正在寻找 Java 中关于访问器的官方命名约定。 我已经看到,例如,JPanel 类弃用了 size() 方法,取而代之的是 getSize()。 但是在ArrayList类中,方法是size()。
我一直在争论“访问器”这个词的用法(上下文是 Java 编程)。我倾向于将访问器视为隐含的“属性访问器”——也就是说,该术语暗示它或多或少地提供对对象内部状态的直接访问。另一方坚持认为任何以任何方式触
我正在尝试编写一个 angular2 模型驱动的表单,其模型暗示了一个嵌套结构,我得到以下异常: No value accessor for 'signupInfo -> userAccount ->
我试图在 Lucee 上的组件上使用合成访问器(尽管这个问题在 ColdFusion 上似乎也一样)。 复制代码: // Person.cfc component accessors=true {
我想控制值在槽中的保存方式以及读取槽时返回的内容。这是我的类定义: (defclass object () ((name :accessor name-access :initf
我正在 eclipse、java 上制作一个基本计算器。但我对其中一种方法有疑问,因为它不接受正确的变量。 我知道问题出在 calculateDifference()和setCurrentValue(
关闭。这个问题是opinion-based 。目前不接受答案。 想要改进这个问题吗?更新问题,以便 editing this post 可以用事实和引文来回答它。 . 已关闭 8 年前。 Improv
好的,所以我想听听关于这个话题的意见。 我有一个哑数据对象 - CustomerOrder。 CustomerOrder 有价格和数量,但也有 TotalCash 属性(价格 * 数量)。所以我有一个
有没有办法在 C++ 中创建通用的 set/get 函数?我有一个具有大量属性但没有函数的类(好吧,我可能应该使用结构),并且真的不想为每个数据成员编写单独的 set 和 get 函数。我想到的函数类
我有一个一对多的核心数据项目。这是我的 .h: @class Categories, Tags; @interface Content : NSManagedObject @property (non
我是一名优秀的程序员,十分优秀!