Javascript 在JQuery更新之后,ng transclude不再工作

Javascript 在JQuery更新之后,ng transclude不再工作,javascript,jquery,angularjs,angularjs-ng-transclude,Javascript,Jquery,Angularjs,Angularjs Ng Transclude,这是我在最新JQuery更新后开始遇到的一个奇怪问题 我们使用angularjs1.7.9in-out应用程序。我们有以下组件。它基本上是一个日期字段包装器 export class DateFieldComponent { ... transclude: any = { iconContent: "?iconContent", }; template: string = ` <div> <span ng-click=

这是我在最新JQuery更新后开始遇到的一个奇怪问题

我们使用angularjs
1.7.9
in-out应用程序。我们有以下组件。它基本上是一个日期字段包装器

export class DateFieldComponent {
  ...
  transclude: any = {
    iconContent: "?iconContent",
  };
  template: string = `
    <div>
      <span
        ng-click="$ctrl.focusInput()"
        ng-transclude="iconContent"
      />
      <input
        ...
      ></input>
    </div>
  `;
}

angular.module("App").component("dateField", new DateFieldComponent());
所以如果我去掉这条线,一切都正常。向后添加此行会使组件无法正确渲染

我知道JQuery更新对angularjs没有影响,因为angularjs使用自己的
JQuery lite
版本。另外据我所知,
ng transclude
JQuery
无关

我还注意到,在这次更新之后,我们在应用程序中使用ng transclude的所有地方都存在类似的问题


我错过了什么?任何线索都将不胜感激。

事实证明,我们在标记中犯了一个简单的错误,JQuery 3.5.0版本不再适用

这就是罪魁祸首

<span
  ng-click="$ctrl.focusInput()"
  ng-transclude="iconContent"
/>

事实证明,我们在标记中犯了一个简单的错误,jQuery3.5.0版本不再适用

这就是罪魁祸首

<span
  ng-click="$ctrl.focusInput()"
  ng-transclude="iconContent"
/>

AngularJS只有在jQuery之前加载时才使用它的JQLite。否则,它将使用页面上全局可用的jQuery。在一个不相关的注释中,编写
transclude:any={iconContent:“?iconContent”,}非常糟糕;写入
transclude={iconContent:“?iconContent”,}
或者停止使用TypeScriptAngularJS,如果它是在jQuery之前加载的,那么它只会使用它的JQLite。否则,它将使用页面上全局可用的jQuery。在一个不相关的注释中,编写
transclude:any={iconContent:“?iconContent”,}非常糟糕;写入
transclude={iconContent:“?iconContent”,}或停止使用TypeScript
<span
  ng-click="$ctrl.focusInput()"
  ng-transclude="iconContent">
<span/>