繁体   English   中英

错误类型错误:“jit_nodeValue_3(...).toggle 不是函数”

[英]ERROR TypeError: "jit_nodeValue_3(...).toggle is not a function"

我正在从事 Angular 项目。 我想添加一个月份选择器,它会在点击导航栏上的文本字段时出现。 我正在使用像<p-calendar><p-overlay>这样的primeng组件。 它本身就是一个巨大的项目,我必须添加calendar小部件。 所以我只会向您展示我的部分代码。

导航.component.html

<div class="dls-menu-item" style="float: right; margin-right: 200px;">
    <input type="text" (click)="op.toggle($event)">
</div>

<p-overlayPanel #op>
  <div id="comp-render">
    <div class="all-container">
      <p>Time selection</p><br>
      <div>
        <p-calendar view="month" dateFormat="mm/yy"...></p-calendar>
      </div>
      <br>
    </div>
  </div>
</p-overlayPanel>

但是当我点击输入字段时,我得到了这个错误: 在此处输入图像描述

我对这个错误的研究表明它与MD Bootstrap有关。 但是这个答案对我不起作用。 我也尝试过这种技术,但它没有按照我们想要的方式执行。 我的发现表明(click)="op.toggle($event)是根本原因。请告诉我如何解决这个问题。

抱歉回复晚了,您可以尝试创建 typings.d.ts 并将此代码放入其中吗

interface JQuery<any> {
    tooltip(params: any): any;
}

然后在你的 tsconfig.json

"typeRoots": [
            "node_modules/@types",
            "src/typings.d.ts" // add here
        ],

当您尝试从非主要元素触发弹出框切换时会发生这种情况。 看来您需要将 pInput 添加到输入(或 div 并移动单击处理程序),然后它将起作用。

<div class="dls-menu-item" style="float: right; margin-right: 200px;">
    <input type="text" (click)="op.toggle($event)" pInput><!--Add pInput-->
</div>

<p-overlayPanel #op>
  <div id="comp-render">
    <div class="all-container">
      <p>Time selection</p><br>
      <div>
        <p-calendar view="month" dateFormat="mm/yy"...></p-calendar>
      </div>
      <br>
    </div>
  </div>
</p-overlayPanel>

请检查 ngx-menu 是否已导入您使用它的模块中。

我最近在使用 Angular 7 和Mat-Menu时遇到控制台错误jit_nodevalue_3(...) is not a function

此错误背后的原因是 mat-menu 元素被声明为与我正在使用的单击处理程序 function 同名。

<mat-menu #onClickItem="matMenu">
  <button mat-menu-item (click)="onClickItem()">Item 1</button>
  <button mat-menu-item>Item 2</button>
</mat-menu>

重命名点击 function 解决了问题。

<button mat-menu-item (click)="doSomething()">Item 1</button>

希望这对某人有帮助。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM