在angularjs中使用anchortag调用函数时感到困惑

在angularjs中使用anchortag调用函数时感到困惑,angularjs,Angularjs,我在一个angularjs项目上工作。我有一个下拉列表,其中有新电子邮件、新联系人、新日历功能。但这些功能只在特定页面上工作,就像新消息功能只在电子邮件页面上工作一样 我想从任何地方调用newMessage函数、newAddressbook和NewCalendar函数。。。 你能帮我吗 这是我的函数代码:- <a ng-href="" ng-click="mailbox.newMessage($event)">Email</a> <a hr

我在一个angularjs项目上工作。我有一个下拉列表,其中有新电子邮件、新联系人、新日历功能。但这些功能只在特定页面上工作,就像新消息功能只在电子邮件页面上工作一样

我想从任何地方调用newMessage函数、newAddressbook和NewCalendar函数。。。 你能帮我吗

这是我的函数代码:-

<a ng-href="" ng-click="mailbox.newMessage($event)">Email</a>
             <a href="" ng-click="app.newAddressbook()">Contact</a>
            <a href="" ng-click="app.newCalendar()" >Calendar</a>

您可能遗漏了一些细节,请尝试将控制器嵌入到您正在使用的各个div中。 或者您可以在模型中声明作用域为“root”(“$rootScope”)。
希望这会有所帮助。

您可能遗漏了一些细节,请尝试将控制器嵌入到您正在使用的各个div中。 或者您可以在模型中声明作用域为“root”(“$rootScope”)。
希望这会有所帮助。

这应该对你有用

在app.js中编写以下代码

app.run(['$rootScope', function($rootScope) {
    $rootScope.newMessage = function($event) {
        // do something
    }
    $rootScope.newAddressbook = function($event) {
        // do something
    }
    $rootScope.newCalendar = function($event) {
        // do something
    }
}]);
在Safari和IE中,“javascript:void(0)”被视为不安全,因此在应用程序配置中包含以下代码

app.config(['$compileProvider',function($compileProvider) {
    $compileProvider.aHrefSanitizationWhitelist(/^\s*(https?|ftp|mailto|javascript|chrome-extension):/);
}])
//html代码

<a ng-href="javascript:void(0)" ng-click="$root.newMessage($event)">Email</a>
<a href="javascript:void(0)" ng-click="$root.newAddressbook($event)">Contact</a>
<a href="javascript:void(0)" ng-click="$root.newCalendar($event)" >Calendar</a>

这应该适合您

在app.js中编写以下代码

app.run(['$rootScope', function($rootScope) {
    $rootScope.newMessage = function($event) {
        // do something
    }
    $rootScope.newAddressbook = function($event) {
        // do something
    }
    $rootScope.newCalendar = function($event) {
        // do something
    }
}]);
在Safari和IE中,“javascript:void(0)”被视为不安全,因此在应用程序配置中包含以下代码

app.config(['$compileProvider',function($compileProvider) {
    $compileProvider.aHrefSanitizationWhitelist(/^\s*(https?|ftp|mailto|javascript|chrome-extension):/);
}])
//html代码

<a ng-href="javascript:void(0)" ng-click="$root.newMessage($event)">Email</a>
<a href="javascript:void(0)" ng-click="$root.newAddressbook($event)">Contact</a>
<a href="javascript:void(0)" ng-click="$root.newCalendar($event)" >Calendar</a>

var-app=angular.module('SOGo.Common'))
应用控制器(“导航控制器”,导航控制器);
app.run(['$rootScope',函数($rootScope){
$rootScope.newMessage=函数($event){
//做点什么
}
$rootScope.newAddressbook=函数($event){
//做点什么
}
$rootScope.newCalendar=函数($event){
//做点什么
}
}]);
});
var-app=angular.module('SOGo.Common'))
应用控制器(“导航控制器”,导航控制器);
app.run(['$rootScope',函数($rootScope){
$rootScope.newMessage=函数($event){
//做点什么
}
$rootScope.newAddressbook=函数($event){
//做点什么
}
$rootScope.newCalendar=函数($event){
//做点什么
}
}]);

});嵌入到一个div中并将ng单击放置在divtry中:
href=“javascript:void(0)”
用于调用根文件中的任意位置定义:
app.js
$rootScope
。嵌入到一个div中并将ng单击放置在divtry中:
href=“javascript:void(0)”
用于在根文件中调用anywhere define:
app.js
$rootScope
。用于给出解决方案。将上面的js代码放在何处。我有这么多的js文件。。在“做点什么”块中写什么?@VikasPatel-将该代码放入app.js文件中,在该文件中您已初始化angular app.thaks以提供解决方案。在何处放置较高的js代码。我有这么多的js文件。。在“做点什么”块中写什么?@VikasPatel-将代码放入你的app.js文件中,在那里你已经初始化了angular应用程序。我在navcontroller.js文件中使用上述代码…但它不工作我在navcontroller.js文件中使用上述代码…但它不工作