0
我試圖從指令的控制器中獲取一些變量或調用一些方法,但它不起作用。AngularJS - 控制器不能在內部工作
我已經導入了所有需要的文件,並注入了所有需要的東西。 如果我使用相同的方法,但我使用templateUrl
它正在工作,但這不是,我做錯了什麼?
這只是我的代碼的一部分。
class Application {
constructor($router, alertsHandlerService) {
this.$router = $router;
this.routing();
this.alertsHandlerService = alertsHandlerService;
console.log("app construct");
}
routing(){
this.$router.config(
{
path: '/',
component: {'main': 'main'} // view-name:component => name.html, NameController
}
);
}
skuska(){
console.log("skuska called");
}
}
Application.$inject = ['$router', 'alertsHandlerService'];
export default function() {
return {
scope: {},
controller: Application,
controllerAs: 'applicationCtrl'
};
};
我的縮短HTML文件
<html lang="en" ng-app="agenda" application class="no-js"> <!--<![endif]-->
<body>
{{ applicationCtrl.skuska() }}
</body>
</html>
@marnitas我有類似你寫的東西,除了我註冊應用程序在另一個模塊,然後注入議程模塊作爲依賴 – Stevik
所以我認爲你打破單一責任的規則。控制器應該專用於特定的視圖或指令。如果你想讓你的控制器更加可重用,我認爲你應該考慮繼承。但仍然 - 模塊應該是單一責任人。 – marnits