Javascript 定义范围变量的最佳实践
我有这张表格。此表单包含许多输入,如名字、姓氏、职务、备注、州、部门、文档、主管……等等 最初我有一个这样的控制器Javascript 定义范围变量的最佳实践,javascript,angularjs,angularjs-scope,angularjs-controller,Javascript,Angularjs,Angularjs Scope,Angularjs Controller,我有这张表格。此表单包含许多输入,如名字、姓氏、职务、备注、州、部门、文档、主管……等等 最初我有一个这样的控制器 app.controller("titleCtrl", function ($scope) { $scope.FirstName = ... $scope.LastName = ... $scope.Notes = .... $scope.JobTitle = ...
app.controller("titleCtrl", function ($scope)
{
$scope.FirstName = ...
$scope.LastName = ...
$scope.Notes = ....
$scope.JobTitle = ...
$scope.Department = ...
$scope.Supervisor = ...
$scope.Documents = ...
$scope.ID = function(data){
}
//and 15 more fields......
});
我了解到,像这样在作用域上声明变量并不是最好的做法。我的问题是什么是最佳实践?在控制器中声明20个左右变量的最佳方法是什么?- 如果是变量,则在函数开头声明它们 街区李>
- 如果是属性,则创建一个名称空间并将其添加到该名称空间中,以便 可以全局访问其他位置,同时命名空间将 保存它,避免直接添加到窗口对象
$scope
不是您的型号。它只是模型的占位符。假设你想显示用户信息,那么你应该这样
$scope.user = {
firstName: 'Joe',
lastName: 'Masan',
jobTitle: 'Engineer',
age: 22,
};
这是将模型(这里是user
)放在范围内的最佳实践。不应直接在$scope
对象中指定字段。就性能而言,AngularJS的工作范围远远低于200个属性。因为AngularJS有一个摘要周期,所以当您有大量字段时,它总是会影响性能
AngularJS creator关于最佳实践的精彩视频取决于您所说的最佳实践 角度形式提供动态变量。将ng模型添加到输入元素时。 因此:
first_name
可在您需要时使用
但这取决于你想用它做什么
如果不需要更改每个变量,可以跳过所有变量的声明,只需使用javascript本机对象即可下面答案中的一些非常好的建议。你应该意识到
<input name="first_name" ng-model="first_name">