browserLink 上无法识别的表达式

unrecognized expression on browserLink

我对 " browserLink " 见下文

有一些误解
<div ng-show="optList.editing && optList.BANKRUPT_FLG != 'Y' && (optList.OPT != 'TF' || (optList.OPT == 'TF' && optList.ONCESMART_ID == '-1'))">
  <input />
</div>

没关系..

但是

<div ng-show="optList.editing && optList.BANKRUPT_FLG != 'Y' && (optList.OPT != 'TF' || (optList.OPT == 'TF' && optList.ONCESMART_ID == '-1'))">
  <input type="text"/>
</div>

当我在输入标签上添加 type="text" 时,我将得到

Uncaught Error: Syntax error, unrecognized expression:

div:has(input[type='text'])[ng-show='optList.editing && optList.BANKRUPT_FLG != 'Y' && (optList.OPT != 'TF' || (optList.OPT == 'TF' && optList.ONCESMART_ID == '-1'))']

有人可以告诉我,请问如何解决这个错误?

仅供参考: Google Chrome (48.0.2564.97)
微软 Visual Studio 专业版 2015 (14.0.23107.156)
Web Essentials 2015.1 (1.0.203)

浏览器 Link 中存在导致此问题的错误。您应该能够通过向 <div> 标记添加 ID 属性来解决它。

浏览器 Link 创建 jQuery 表达式来尝试唯一标识您页面中的标签。在本例中,它尝试使用 ng-show 表达式,因为关于标签的其他内容都不够独特。但是 ng-show 表达式对于这个目的来说显然太复杂了。由于这个原因,它应该被忽略,但不知何故,它击败了本应取消它资格的支票。

浏览器 Link 宁愿使用唯一 ID 或 class,如果存在的话。通过提供它,您可以防止它考虑 ng-show 属性。

我没有 DIV 标签,所以我只是在 Visual studio 中禁用了浏览器 Link,错误就消失了。 Visual Studio.

中的 运行 AngularJS 应用程序时,有报告称浏览器 Link 会导致问题

要禁用,只需取消选中“启用浏览器 Link”选项即可。

有人向我指出了这个解决方案,这里的答案中有更多详细信息: