自定义指令上的AngularJS单向绑定

AngularJS one-way binding on custom directive

本文关键字:绑定 AngularJS 指令 自定义      更新时间:2023-09-26

我正在使用AngularJS highcharts(https://github.com/pablojim/highcharts-ng)

我有这个配置,我需要确保它只绑定一次。我在AngularJS上查找了单向绑定,它说如果我使用AngularJS 1.3(我就是),我需要使用::。但我不知道如何在自定义指令中使用它。

 <highchart config="configtemp"></highchart>

我试过类似的东西,但它不起作用

 <highchart config=":: configtemp"></highchart>

在这方面,自定义指令的工作方式与角度指令相同。AngularJS highcharts有一个隔离范围,根据:

scope: {
    config: '=',
    disableDataWatch: '='
  },

因此,它的作用域将由分配给html中这些属性的值组成。因此

<highchart config=":: configtemp"></highchart>

意味着在指令作用域上CCD_ 2将等于CCD_。由于您有'::'configtemp的值不会像您建议/预期的那样从第一个值更改(更广为人知的是一次性绑定)。(此示例为plunker形式)。

Highcharts确实有一些额外的逻辑,但最终它的内部配置是从这个属性/范围值派生的。

如果没有进一步的信息,我无法建议什么"不起作用"。