我刚刚开始研究Angularjs,并且在调用其他模块中定义的工厂时遇到了问题。实际上我需要清理代码,所以我必须在一个js文件中构建所有功能,我必须在我已经定义我的控制器的主js文件中使用它们。我已经制作了一个简单的代码来理解这个问题。提前致谢
以下是Html文件: -
char *chain_certs = "------- BEGIN CERTIFICAT...."; /// <<< YOUR CERTIFICATE CHAIN
// Load chain of certs
X509 *cacert=NULL;
BIO *mem = BIO_new_mem_buf(chain_certs,strlen(chain_certs));
X509_STORE *cert_store = SSL_CTX_get_cert_store(ssl_context);
if(cert_store!=NULL){
int index = 0;
while ((cacert = PEM_read_bio_X509(mem, NULL, 0, NULL))!=NULL) {
if(cacert) {
g_debug("Our certificate name is %s", cacert->name);
X509_STORE_add_cert(cert_store, cacert);
X509_free(cacert);
cacert=NULL;
} /* Free immediately */
index++;
}
}
BIO_free(mem);
以下是script.js文件
<!DOCTYPE html>
<html>
<head>
<script data-require="angular.js@1.1.5" data-semver="1.1.5" src="https://ajax.googleapis.com/ajax/libs/angularjs/1.1.5/angular.js"></script>
<link rel="stylesheet" href="style.css" />
<script src="function.js"></script>
<script src="script.js"></script>
</head>
<body ng-app="MyServiceModuleOne">
<div ng-controller="TestController">
<button type="button" ng-click="getFn()"> Test </button>
</div>
</body>
</html>
以下是function.js文件: -
var myModule= angular.module('MyServiceModuleTwo',['MyServiceModuleOne']);
myModule.controller('TestController', ['$scope', 'notify', function($scope, notify){
$scope.getFn = function() {
notify.sampleFun();
}
}]);
答案 0 :(得分:1)
需要进行一些更改。
您正在引用MyServiceModuleTwo
作为根模块,但您引用的控制器位于MyServiceModuleOne
。
因此,将您的ng-app从MyServiceModuleTwo
更改为{{1}}。
我已更新plnkr