Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Angularjs 调用指令';通过观察API对象,如何识别指令实例?_Angularjs_Angular Directive - Fatal编程技术网

Angularjs 调用指令';通过观察API对象,如何识别指令实例?

Angularjs 调用指令';通过观察API对象,如何识别指令实例?,angularjs,angular-directive,Angularjs,Angular Directive,我想提供指令API,以便指令可以相互通信。我正在使用一个API对象和$watch来实现它。下面是我的例子 指令“greeting”查看服务“greetingApi”。如果更改了“greetingApi.username”,则将调用greeting指令的updateUsername()方法 问题是,如果一个页面中有多个问候语指令,那么会触发所有指令的updagtuesername()方法吗 我怎样才能解决这个问题 API对象是提供指令API的好模式吗 感谢将服务对象指定为作用域属性没有错,控制器

我想提供指令API,以便指令可以相互通信。我正在使用一个API对象和$watch来实现它。下面是我的例子

指令“greeting”查看服务“greetingApi”。如果更改了“greetingApi.username”,则将调用greeting指令的updateUsername()方法

问题是,如果一个页面中有多个问候语指令,那么会触发所有指令的updagtuesername()方法吗

  • 我怎样才能解决这个问题

  • API对象是提供指令API的好模式吗


  • 感谢

    将服务对象指定为作用域属性没有错,控制器变得更薄,更易于测试

    但是这个

    function updateUsername () {
        ctrl.username = greetingApi.username;
    }
    
    这与这个概念背道而驰


    greetingApi
    应该作为一个模型和唯一的真实来源工作,它已经暴露于作用域中,可以作为
    {api.username}

    将服务对象指定为作用域属性没有错,控制器变得更薄,更容易测试

    但是这个

    function updateUsername () {
        ctrl.username = greetingApi.username;
    }
    
    这与这个概念背道而驰

    greetingApi
    应该作为一个模型和唯一的真相来源,它已经暴露在范围内,可以作为
    {api.username}
    进行绑定