Skip to content

Instantly share code, notes, and snippets.

View jbmilgrom's full-sized avatar

Jonathan Milgrom jbmilgrom

View GitHub Profile
<input type="text" ng-model="modelName" nullify-model>
.directive('nullifyModel', ['$filter',
function($filter){
return {
restrict: 'A',
require: "ngModel",
link: link
};
function link(scope, elem, attrs, ctrl){
ctrl.$parsers.push($filter('nullify'));
.filter('nullify', function(){
return function(value){
return value ? value : null;
};
});
<i class="icon upvote" ng-click="vm.user.upvote(vm.answer)"></i>
<i class="icon upvote"
ng-click="vm.user.upvote(vm.answer)"
ng-class="{voted: vm.answer.isVotedFor(vm.user)}">
</i>
<i class="icon upvote"
ng-click="vm.user.upvote(vm.answer)"
ng-class="{voted: vm.answer.isVotedFor(vm.user)}">
</i>
{{ vm.answer.voteCount() }}
<i class="icon downvote"
ng-click="vm.user.downvote(vm.answer)"
ng-class="{voted: vm.answer.isVotedAgainst(vm.user)}">
</i>
scope.$watchGroup(['expression1', 'expression2'], function(arrayOfExpressions) {
...
});
var isVotedGroup = [
'vm.answer.isVotedAgainst(vm.user)',
'vm.answer.isVotedFor(vm.user)'
];
var unwatch = scope.$watchGroup(isVotedGroup, function(isVotedGroup) {
var hasVoted = isVotedGroup.some(function(bool) {
return bool;
});
if (hasVoted) {
var o = {iThink: ‘thereforeIAm’}; // memory allocated for an object and a string
var o = {iThink: ‘thereforeIAm’}; // memory allocated for an object and a string
o = ‘helloImANewString’;