小编Gra*_*ham的帖子

拖放可排序的ng:在AngularJS中重复?

在AngularJS中的元素jQuery.sortable上是否易于使用ng-repeat?


如果重新排序自动传播的项目,这将排序回源数组,这将是非常棒的.我担心这两个系统会打架.有一个更好的方法吗?

javascript jquery-ui-sortable angularjs

61
推荐指数
4
解决办法
8万
查看次数

为什么requestAnimationFrame比setInterval或setTimeout更好

为什么我应该使用requestAnimationFrame而不是setTimeout或setInterval?

这个自我回答的问题是一个文档示例.

javascript animation canvas html5-canvas

55
推荐指数
1
解决办法
2万
查看次数

为什么在C#6.0中交换内部'finally'和外部'when'的执行顺序?

我见过这个例子:

static void Main(string[] args)
{
    Console.WriteLine("Start");
    try
    {
        SomeOperation();
    }
    catch (Exception) when (EvaluatesTo())
    {
        Console.WriteLine("Catch");
    }
    finally
    {
        Console.WriteLine("Outer Finally");
    }
}

private static bool EvaluatesTo()
{
    Console.WriteLine($"EvaluatesTo: {Flag}");
    return true;
}

private static void SomeOperation()
{
    try
    {
        Flag = true;
        throw new Exception("Boom");
    }
    finally
    {
        Flag = false;
        Console.WriteLine("Inner Finally");
    }
}
Run Code Online (Sandbox Code Playgroud)

这会产生下一个输出:

Start
EvaluatesTo: True
Inner Finally
Catch
Outer Finally
Run Code Online (Sandbox Code Playgroud)

这对我来说听起来很奇怪,而且我正在寻找一个很好的解释这个命令,将它包含在我脑海中.我以前期待finally块执行when:

Start
Inner Finally
EvaluatesTo: True
Catch
Outer Finally
Run Code Online (Sandbox Code Playgroud)

文档说明这个执行顺序是正确的,但它没有详细说明为什么这样做,以及这里执行顺序的确切规则是什么.

c# c#-6.0

45
推荐指数
1
解决办法
1267
查看次数

使用使用angular.module()创建的AngularJS控制器.controller()

我仍然是AngularJS的新手,我正在设置我的第一个应用程序.我希望能够做到以下几点:

angular.module('App.controllers', [])
  .controller('home', function () {
    $scope.property = true;
  }]);

angular.module('App', ['App.controllers'])
  .config(['$routeProvider', function($routeProvider) {
    $routeProvider.when('/', {templateUrl: 'partials/home.html', controller: home});
  }]);
Run Code Online (Sandbox Code Playgroud)

使用此设置会生成以下错误:

Uncaught ReferenceError: home is not defined from App
Run Code Online (Sandbox Code Playgroud)

我的问题是:如何使用angular.module.controller()(或$controllerProvider.register()直接)注册控制器并在我的应用程序的其他地方使用注册的控制器.

我的动机:我想避免使用全局构造函数作为我的控制器(如使用angularjs.org时的大多数示例)或复杂的命名空间.如果我可以注册并使用控制器作为单个变量名称(不是那么放在全局范围内),那将是理想的.

angularjs

44
推荐指数
1
解决办法
3万
查看次数

在开发环境中使用Angular CLI连接express.js

我找到了一个很棒的教程,解释了如何使用Angular CLI设置express.js,但在本教程中,角度应用程序被编译到生产dist文件夹中:https: //scotch.io/tutorials/mean-app-with-angular- 2 -和-的棱角-CLI

如何将express.js与Angular CLI集成,但我希望express.js能够与Angular应用程序的开发版本一起使用,如果我对快速OR角度应用程序进行更改,我希望nodemon重新启动.

花了八个多小时试图让这个工作.谢谢!

每次我对Angular应用程序进行更改时都不想运行'ng build'(这需要太长时间) - 每当我将更改保存到我的角度应用程序时,我都想立即重新加载(就像我在运行'ng serve'一样) ')或表达应用程序.

我找到了一个教程,你将Angular 2 QuickStart与Express连接起来,它可以工作,但我希望使用Angular CLI.

我知道Angular CLI使用WebPack,而QuickStart使用System.js

node.js express angular-cli angular

39
推荐指数
3
解决办法
3万
查看次数

如何使用jquery链接ajax调用

我需要在不锁定浏览器的情况下发出一系列N ajax请求,并希望使用jquery延迟对象来完成此任务.

下面是三个请求一个简单的例子,但我的程序可能需要超过100个排队(注意,这是不准确的使用情况下,实际的代码确实需要确保步骤执行下一之前成功(N-1)步):

$(document).ready(function(){

    var deferred = $.Deferred();

    var countries = ["US", "CA", "MX"];

    $.each(countries, function(index, country){

        deferred.pipe(getData(country));

    });

 });

function getData(country){

    var data = {
        "country": country  
    };


    console.log("Making request for [" + country + "]");

    return $.ajax({
        type: "POST",
        url: "ajax.jsp",
        data: data,
        dataType: "JSON",
        success: function(){
            console.log("Successful request for [" + country + "]");
        }
    });

}
Run Code Online (Sandbox Code Playgroud)

这是写入控制台的内容(所有请求都是并行进行的,响应时间与每个国家/地区的数据大小成正比:

Making request for [US]
Making request for [CA]
Making request for [MX]
Successful request for [MX]
Successful request for …
Run Code Online (Sandbox Code Playgroud)

ajax jquery deferred jquery-deferred

33
推荐指数
2
解决办法
3万
查看次数

如何使用AngularJS设置页面标题

我使用以下代码显示每个AngularJS应用程序模板的页面标题,但每当我尝试输入无效的URL来测试.otherwise时,我会收到以下错误:

TypeError: Cannot read property 'title' of undefined
    at http://localhost/app/js/app.js:34:43
Run Code Online (Sandbox Code Playgroud)

以下是使用的app.js,index.html代码:

app.js:

var myApp = angular.module('myApp', ['ngRoute', 'ngSanitize']);
myApp.config(['$routeProvider', function($routeProvider) {

       $routeProvider.when('/home', 
                {     templateUrl: 'templates/index.html', 
                      controller: 'MainController',
                      title: 'Welcome to Home Page'
                });
        $routeProvider.otherwise({
                                    redirectTo: '/home'

                                 });

}]);


myApp.run(['$location', '$rootScope', function($location, $rootScope) {
    $rootScope.$on('$routeChangeSuccess', function (event, current, previous) {
        $rootScope.title = current.$$route.title;
    });
}]);
Run Code Online (Sandbox Code Playgroud)

index.html的:

<title ng-bind="title +' - MyAPP Home'"> - MyApp</title>
Run Code Online (Sandbox Code Playgroud)

请建议

angularjs

30
推荐指数
1
解决办法
4万
查看次数

Azure DocumentDb中数组的WHERE子句

在像这样的Azure Documentdb文档中

{
"id": "WakefieldFamily",
"parents": [
    { "familyName": "Wakefield", "givenName": "Robin" },
    { "familyName": "Miller", "givenName": "Ben" }
],
"children": [
    {
        "familyName": "Merriam", 
        "givenName": "Jesse", 
        "gender": "female", 
        "grade": 1,
        "pets": [
            { "givenName": "Goofy" },
            { "givenName": "Shadow" }
        ]
    },
    { 
      "familyName": "Miller", 
      "givenName": "Lisa", 
      "gender": "female", 
      "grade": 8 
    }
],
  "address": { "state": "NY", "county": "Manhattan", "city": "NY" },
  "isRegistered": false
};
Run Code Online (Sandbox Code Playgroud)

如何查询给名字的宠物是"高飞"的孩子?

看起来以下语法无效

Select * from root r
WHERE r.children.pets.givenName="Goofy"
Run Code Online (Sandbox Code Playgroud)

相反,我需要这样做

Select * from root …
Run Code Online (Sandbox Code Playgroud)

nosql azure-cosmosdb

27
推荐指数
2
解决办法
1万
查看次数

C#7.0 ValueTuples与匿名类型

看看新的C#7.0 ValueTuples,我想知道它们是否会完全取代Anonymous Types.我知道这ValueTuples是结构,因此行为与Anonymous Types类不同.但是,我没有看到一个用例,我更喜欢使用Anonymous Typeover ValueTuple.

是否存在使用a Anonymous Type仍然比ValueTuples在C#7.0中使用更有用的用例?

c# tuples anonymous-types c#-7.0

23
推荐指数
2
解决办法
3590
查看次数

AngularJS中的"计算属性"

我最近选择了AngularJS而不是ember.js来处理我正在进行的项目,并且到目前为止对它非常满意.关于ember的一个好处是它内置了对具有自动数据绑定的"计算属性"的支持.我已经能够使用下面的代码在Angular中完成类似的操作,但我不确定它是否是最好的方法.

// Controller
angular.module('mathSkills.controller', [])
  .controller('nav', ['navigation', '$scope', function (navigation, $scope) {
    // "Computed Property"
    $scope.$watch(navigation.getCurrentPageNumber, function(newVal, oldVal, scope) {
      scope.currentPageNumber = newVal;
    });
    $scope.totalPages = navigation.getTotalPages();
  }]);

// 'navigation' service
angular.module('mathSkills.services', [])
  .factory('navigation', function() {
    var currentPage = 0,
        pages = [];

    return {
      getCurrentPageNumber: function() {
        return currentPage + 1;
      },
      getTotalPages: function() {
        return pages.length;
      }
    };
  });

// HTML template
<div id=problemPager ng-controller=nav>
  Problem {{currentPageNumber}} of {{totalPages}}
</div>
Run Code Online (Sandbox Code Playgroud)

我希望UI能够currentPage在navigation服务发生变化时更新,上面的代码完成了.

这是解决AngularJS中此问题的最佳方法吗?使用$watch()这样的(重大)性能影响吗?使用自定义事件和 …

angularjs

21
推荐指数
3
解决办法
2万
查看次数