当我也在使用指令控制器时,从指令调用控制器方法。
call controller method from directive when I am using controller of directive also.
我有一个指令,现在我想将相同的数据发送到其他控制器的方法,而这个控制器完全独立于这个指令。这个另一个控制器实际上位于当前目录之外。
如何在 angularjs 中执行此操作?
创建一个 angular 服务并注入两个控制器。从控制器 1 更新该服务中的变量并在控制器 2 中检索。类似这样的东西 -
myApp.factory('myFactory', function () {
// declare and store the value in a local variable here
var prop = '';
return {
getProperty: function () {
return prop;
},
setProperty: function(value) {
prop = value;
}
};
});
function Ctrl1($scope, myFactory) {
myFactory.setProperty('myValue');
}
function Ctrl2($scope, myFactory) {
val = myFactory.getProperty();
}
angular 服务是单例,因此它在整个代码中保持状态。
在 angularjs 中有一个关于指令的想法 scope.It 让您可以通过 3 种方式使用指令的数据。
1) 字符串@
2) 双向 =
3) 函数式&
我想你听说过 these.This link 也许可以帮助你。
https://docs.angularjs.org/api/ng/service/$编译#指令定义对象
我有一个指令,现在我想将相同的数据发送到其他控制器的方法,而这个控制器完全独立于这个指令。这个另一个控制器实际上位于当前目录之外。
如何在 angularjs 中执行此操作?
创建一个 angular 服务并注入两个控制器。从控制器 1 更新该服务中的变量并在控制器 2 中检索。类似这样的东西 -
myApp.factory('myFactory', function () {
// declare and store the value in a local variable here
var prop = '';
return {
getProperty: function () {
return prop;
},
setProperty: function(value) {
prop = value;
}
};
});
function Ctrl1($scope, myFactory) {
myFactory.setProperty('myValue');
}
function Ctrl2($scope, myFactory) {
val = myFactory.getProperty();
}
angular 服务是单例,因此它在整个代码中保持状态。
在 angularjs 中有一个关于指令的想法 scope.It 让您可以通过 3 种方式使用指令的数据。
1) 字符串@
2) 双向 =
3) 函数式&
我想你听说过 these.This link 也许可以帮助你。 https://docs.angularjs.org/api/ng/service/$编译#指令定义对象