我有这样的对象:
students = {name: 'Aa_Student', class: 'A_Class'},
{name: 'Ab_Student', class: 'A_Class'},
{name: 'Ac_Student', class: 'B_Class'},
{name: 'Ba_Student', class: 'B_Class'},
{name: 'Bb_Student', class: 'C_Class'},
{name: 'Bc_Student', class: 'C_Class'}
Run Code Online (Sandbox Code Playgroud)
假设学生对象被洗牌了.我使用ng-repeat来显示数据.我想按自定义顺序对对象进行排序.
例如,我想显示如下数据:
Name Class
-----------------------------
Ac_Student B_Class
Ba_Student B_Class
Aa_Student A_Class
Ab_Student A_Class
Bb_Student C_Class
Bc_Student C_Class
Run Code Online (Sandbox Code Playgroud)
所以基本上,我想按学生的班级排序,但它首先是B_Class,然后是A_Class,然后是C_Class.另外,我想按字母顺序按学生姓名订购.我怎样才能做到这一点?
HTML:
<table>
<tr ng-repeat="student in students | orderBy:customOrder">
...
</tr>
</table>
Run Code Online (Sandbox Code Playgroud)
控制器:
$scope.customOrder = function(student) {
$scope.students = $filter('orderBy')(student, function() {
});
};
Run Code Online (Sandbox Code Playgroud) 我正在学习JavaScript和AngularJS.
这段代码有什么区别?
function isInArrayNgForeach(field, arr) {
angular.forEach(arr, function(value, key) {
if(field == value)
return true;
});
return false;
} // This returns always false
function isInArrayJavaScript(field, arr) {
for(var i = 0; i < arr.length; i++) {
if(field == arr[i])
return true;
}
return false;
} // This works fine
function isInArray() {
var testArr = ['stack', 'over', 'flow'];
console.log(isInArrayNgForeach('stack', testArr)); // return false
console.log(isInArrayJavaScript('stack', testArr)); // return true
}
Run Code Online (Sandbox Code Playgroud)
我的问题是:为什么isInArrayNgForeach总是返回false?我假设因为函数内部有一个函数,但我不确定为什么.
在HTML文件中:
...
<ul>
<li><a href="#" ng-click="addFruit('Apple')">Apple</a></li>
<li><a href="#" ng-click="addFruit('Banana')">Banana</a></li>
<li><a href="#" ng-click="addFruit('Coconut')">Coconut</a></li>
</ul>
...
Run Code Online (Sandbox Code Playgroud)
控制器:
...
$scope.addFruit = function(fruitName) {
$scope.fruitObject.name = fruitName;
};
$scope.fruitObject = {
name: '',
}
Run Code Online (Sandbox Code Playgroud)
因此,如果单击HTML文件中的链接,它将更改fruitObject.name.我想添加一个函数,如果我点击带有shift键的链接,该值将被添加到fruitObject:
$scope.fruitObject = {
name: ['Apple', 'Banana']
}
Run Code Online (Sandbox Code Playgroud)
JSFiddle:http://jsfiddle.net/6QcEc/
我喜欢使用MacPorts,而Chocolatey是完美的替代应用程序.
但是当我使用Windows时,我只在C盘上安装操作系统,所以如果我对Windows系统有任何问题,我只需格式化我的C盘.因此,我的所有文件都存储在D或E驱动器中.
我安装了Chocolatey,但默认驱动器是C.
C:\ProgramData\chocolatey
Run Code Online (Sandbox Code Playgroud)
另外,安装应用程序的默认位置也是C盘.例如,ruby安装在此位置:
// Get Ruby from the repository
choco install ruby
// Then it installed in this location:
C:\tools\ruby213\bin;
Run Code Online (Sandbox Code Playgroud)
我可以将默认位置设置为D盘吗?
我正在学习JavaScript和AngularJS.
我想用Angular Directive禁用文本选择.
我有一个该函数的JavaScript代码:
function clearSelection() {
if(document.selection && document.selection.empty) {
document.selection.empty();
}
else if(window.getSelection) {
var sel = window.getSelection();
sel.removeAllRanges();
}
};
Run Code Online (Sandbox Code Playgroud)
我正在处理该指令,但不知道如何将该函数添加到指令中.
指示:
...
.directive('disableTextSelection', function() {
return {
link: function($scope, $element, $attrs) {
// Something here..
}
}
}
...
Run Code Online (Sandbox Code Playgroud)
我想在HTML中这样做:
<table disable-text-selection>
...
</table>
Run Code Online (Sandbox Code Playgroud) 我正在学习Spring Framework,它非常棒.
我想使用JAVA多线程,但我不知道如何使用Spring Framework.
这是服务代码:
//StudentService.java
public List<Grade> loadGradesForAllStudents(Date date) {
try{
List<Grade> grades = new ArrayList<Grade>();
List<Student> students = loadCurrentStudents(); // LOAD FROM THE DB
for(Student student : students) { // I WANT TO USE MULTITHREAD FOR THIS PART
// LOAD FROM DB (MANY JOINS)
History studentHistory = loadStudentHistory(student.getStudentId(), date);
// CALCULATION PART
Grade calculatedGrade = calcStudentGrade(studentHistory, date);
grades.add(calculatedGrade);
}
return grades;
} catch(Exception e) {
...
return null;
}
}
Run Code Online (Sandbox Code Playgroud)
没有多线程,它很慢.
我想for循环会导致缓慢,但我不知道如何解决这个问题.如果给我一个有用的链接或示例代码,我会很感激.
我发现loadStudentHistory方法与calcStudentGrade(大约30ms)相比非常慢(大约300ms).
angularjs ×4
javascript ×3
asynchronous ×1
chocolatey ×1
foreach ×1
java ×1
spring ×1
spring-mvc ×1