如果我不打算继承我的控制器类,那么将AngularJS Controller的方法定义为实例方法的原型方法是否有任何区别?
来自C#背景,我更熟悉定义原型方法。我也喜欢保持构造函数的简短。
但是,我在AngularJS中看到的大多数示例都是在实例级定义方法。
module Test {
angular
.module("app")
.controller("controller",
["$scope", MyController]);
export class MyController {
public Function1: () => {}
constructor(private $scope: IMyScope) {
//instance
this.Function1() = () => {
alert("Hello 1!");
}
}
}
//prototype
public Function2(): void {
alert("Hello 2!");
}
}
答案 0 :(得分:1)
如果我不打算继承我的控制器类,那么将AngularJS Controller的方法定义为实例方法的原型方法是否有任何区别?
实例方法会对性能产生影响。除此之外,使用它们完全没问题。我只是使用原型成员。
此视频解释了您可能希望使用实例方法的原因:https://m.youtube.com/watch?v=tvocUcbCupA(主要用于捕获此内容)