小编Edu*_*nal的帖子

AngularJS:防止img src属性中的404错误

我想加载视频缩略图

<img src="http://www.dailymotion.com/thumbnail/video/{{video.id}}">
Run Code Online (Sandbox Code Playgroud)

但是在加载AngularJS之前,我收到404错误

获取http://www.dailymotion.com/thumbnail/video/%7B%7Bvideo.id%7D%7D 404(未找到)

这不是什么大问题,但我想解决它.

http-status-code-404 angularjs

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

AngularJS删除属性

我有一个指令用一些常规HTML替换我的自定义标记.我想删除一些属性.例如,给定语法

<ui mybutton width="30"></mybutton>
Run Code Online (Sandbox Code Playgroud)

我的指令将其转换为

<div width="30" class="btn">bla bla </div>
Run Code Online (Sandbox Code Playgroud)

我想删除它"width=30"并添加style="width:{{old width value here}}"

我一直在尝试编译和链接功能.我应该在编译或链接功能中这样做吗?

我以为我必须在编译功能中这样做,因为我想在模板中进行修改.

请在http://jsfiddle.net/WptGC/2/中 查看.警告:您的浏览器可能会挂起! 实时和安全地查看它http://jsfiddle.net/WptGC/3/使得一切崩溃的代码被评论.

.directive('mybutton', function($compile) {
return {
    restrict: 'A',
    //transclude: true,
    template: '<div class="this is my subscreen div" style="width:{{width}}"></div>',
    replace: false,
    /*scope: {
        width: '@',
        height: '@',
        x: '@',
        y: '@'
    },*/

    compile: function($tElement, $tAttrs) {
        console.log("subscreen template attrs:");
        console.log($tAttrs);
        var el = $tElement[0];
         //el.getAttribute('width');
        var stylewidth = el.getAttribute('width'); 
        el.removeAttribute('width');

         return function(scope) {
            $compile(el)(scope);
         }
    } …
Run Code Online (Sandbox Code Playgroud)

angularjs angularjs-directive

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

我们可以为AngularJS routeProvider编写单元测试吗?

嗨,我正在使用AngularJS构建一个应用程序,我被困在单元测试部分.我知道如何编写控制器的单元测试,但我不知道如何为routeProvider做这个.我正在使用Jasmine进行单元测试.

我的路线提供者将如下所示;

    var app = angular.module('MyApp', ['ngResource'])

     app.config(function ($routeProvider) {
        $routeProvider
          .when('/', {
            templateUrl: 'app/views/main.html',
            controller: 'MainCtrl'
          })
          .when('/home/:PartyID', {
            templateUrl: 'app/views/home.html',
            controller: 'HomeCtrl'
          })
           .when('/edit/:PartyID', {
            templateUrl: 'app/views/update_profile.html',
            controller: 'EditCtrl'
          })
          .when('/route', {
            templateUrl: 'app/views/route.html',
            controller: 'RouteCtrl'
          })
          .when('/signup', {
            templateUrl: 'app/views/signup.html',
            controller: 'SignupCtrl'
          })
          .when('/login', {
            templateUrl: 'app/views/login.html',
            controller: 'LoginCtrl'
          })
          .otherwise({
            redirectTo: '/'
          });  
 });
Run Code Online (Sandbox Code Playgroud)

如何使用Jasmine为此routeProvider编写单元测试?

unit-testing jasmine angularjs

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

JQuery"on appear"事件

我的应用程序在调用$(document).ready之后向DOM添加了一些元素.我正在使用jQuery 1.9.0

以下示例有效.

$(document).on("click", "#box-descr", function(evt) {
    console.log("I showed up");
});
Run Code Online (Sandbox Code Playgroud)

但是,我希望在元素出现在屏幕上时执行该功能.我在这里看不到任何有关此事件的事件http://api.jquery.com/category/events/

基本上它是一个单页面应用程序,因此文档就绪只被调用一次,但是当用户与UI交互时,元素会进出屏幕.

jquery

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

AngularJS + Karma:在单元测试指令或控制器时重用模拟服务

我正在使用AngularJS + Karma. configService管理我的应用程序的设置(例如背景颜色,它在调试模式下,一般权限......).它使用$ http加载初始数据.我成功地为服务编写了测试,但我的指令和控制器使用它.

当我为指令编写单元测试时,我必须模拟服务.

我知道我能做到:

spyOn(configService, 'getBackgroundColor').andCallFake(function (params) {
   return "red";
});
Run Code Online (Sandbox Code Playgroud)

但该服务有25多种方法和初始数据加载.我不想在每个测试套件中编写(并维护)这个spyOn的东西.更重要的是,我使用$ http在工厂加载数据,这也应该被嘲笑.如果我只是注入服务并模拟调用,我仍然会发出http get请求.

您认为重用模拟的最佳方法是什么?

code-reuse unit-testing jasmine angularjs karma-runner

9
推荐指数
2
解决办法
4024
查看次数

使用角度js中的字母过滤列表

我在表格中显示了一个列表,我需要用名字的第一个字母过滤结果,在列表上方我有一个字母ABCD,依此类推.点击后,字母列表将按其名字进行过滤

对于例如:在列表的详细信息Apple Boy Bridge 点击后A,Apple会显示

javascript angularjs

7
推荐指数
1
解决办法
9241
查看次数

AngularJS测试指令,将replace设置为true

<custom-directive>replace:truetemplate: '<img />'.我怎样才能为它编写单元测试?我想我想测试它实际上用img替换了custom-directive.

it('should be transformed to <img>', function(){
  var elm = $compile('<custom-directive></custom-directive>')(scope);
  scope.$digest();

  var t = elm.find('img'); // wrong! it replaces the element. it won't find another one inside
 //expect(elm).toBeAnImgElement ?
});
Run Code Online (Sandbox Code Playgroud)

我找不到正确的匹配器.我见过的最接近的案例是检查内容(elm.html()elm.text()),但我的标签是空的.

unit-testing angularjs angularjs-directive

6
推荐指数
1
解决办法
1950
查看次数

角度服务定义:服务或工厂

我是一个有角度的新手,我正在构建一个应用程序,有一件事让我感到困惑的是有几种方法可以定义服务,而且我从这个链接中读到更多:如何定义服务 然后它似乎没有大的区别定义服务的方式.

但我刚才注意到一个与众不同的区别:

看到我从这里得到的这项服务http://jsfiddle.net/2by3X/5/

var app = angular.module('myApp', []);
app.service('test', function($timeout, $q) {
  var self = this;
  this.getSomething = function() {
    return self.getData().then(function(data) {
      return self.compactData(data);
    });
  };
  this.getData = function() {
    var deferred = $q.defer();

      $timeout(function() {
          deferred.resolve("foo");
      }, 2000);
    return deferred.promise;
  };
  this.compactData = function(data) {
    var deferred = $q.defer();

    console.log(data);

    $timeout(function() {
        deferred.resolve("bar");
    }, 2000);
    return deferred.promise;
  };
});
Run Code Online (Sandbox Code Playgroud)

如果我使用"factory"定义此服务,如下所示,一个函数不能调用该服务的其他功能.

app.factory('test', function($timeout, $q) {
  return {
      getSomething : function() {
    return getData().then(function(data) {
      return compactData(data); …
Run Code Online (Sandbox Code Playgroud)

angularjs angularjs-service

6
推荐指数
1
解决办法
1253
查看次数

Mahout:CSV来传送和运行程序

我正在用Mahout分析k-means算法.我将运行一些测试,观察性能,并根据我得到的结果做一些统计.

我无法弄清楚在Mahout中运行我自己的程序的方法.但是,命令行界面可能就足够了.

要运行示例程序,我这样做

$ mahout seqdirectory --input uscensus --output uscensus-seq
$ mahout seq2sparse -i uscensus-seq -o uscensus-vec
$ mahout kmeans -i reuters-vec/tfidf-vectors -o uscensus-kmeans-clusters -c uscensus-kmeans-centroids -dm org.apache.mahout.common.distance.CosineDistanceMeasure -x 5 -ow -cl -k 25
Run Code Online (Sandbox Code Playgroud)

数据集是一个大型CSV文件.每一行都是一条记录.功能以逗号分隔.第一个字段是ID.由于输入格式,我不能马上使用seqdirectory.我正在尝试实现这个类似问题的答案如何使用存储为CSV的矢量数据在mahout中执行k-means聚类?但我还有两个问题:

  1. 如何从CSV转换为SeqFile?我想我可以使用Mahout编写自己的程序进行转换,然后将其输出用作seq2parse的输入.我想我可以使用CSVIterator(https://cwiki.apache.org/confluence/display/MAHOUT/File+Format+Integrations).我应该用什么类来读写?
  2. 如何构建和运行我的新程序?我无法用Mahout这本书或其他问题来解决这个问题.

java apache hadoop mahout

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

无法在Chrome中使用文件协议打开Angular应用

嗨,我有angularjs和chrome的问题,这是代码:

   var angularRoutingApp = angular.module('angularRoutingApp', ['ngRoute'])

   // Configuración de las rutas
   .config(function($routeProvider) 
   {

 $routeProvider
    .when('/', {
        templateUrl : 'pages/home.html',
        controller  : 'mainController'
    })
    .when('/artistas', {
        templateUrl : 'pages/artistas.html',
        controller  : 'artistasController'
    })
    .when('/login', {
        templateUrl : 'pages/login.html',
        controller  : 'loginController'
    })
    .otherwise({
        redirectTo: '/'
    });
    });
Run Code Online (Sandbox Code Playgroud)

如果我打开index.html与Opera,Firefox或safary我没有任何问题,但如果我打开这与Chorme不工作routerprovider并在控制台显示一个错误消息,如下所示:

XMLHttpRequest无法加载文件://localhost/Users/multivideo/Desktop/FTL-Angular/pages/home.html.仅支持HTTP的跨源请求.index.html的:1

Error: A network error occurred.
at Error (native)
at https://ajax.googleapis.com/ajax/libs/angularjs/1.2.8/angular.min.js:72:206
at C (https://ajax.googleapis.com/ajax/libs/angularjs/1.2.8/angular.min.js:68:99)
at f (https://ajax.googleapis.com/ajax/libs/angularjs/1.2.8/angular.min.js:66:69)
at C (https://ajax.googleapis.com/ajax/libs/angularjs/1.2.8/angular.min.js:92:375)
at C (https://ajax.googleapis.com/ajax/libs/angularjs/1.2.8/angular.min.js:92:375)
at https://ajax.googleapis.com/ajax/libs/angularjs/1.2.8/angular.min.js:94:28
at h.$eval (https://ajax.googleapis.com/ajax/libs/angularjs/1.2.8/angular.min.js:102:293)
at h.$digest (https://ajax.googleapis.com/ajax/libs/angularjs/1.2.8/angular.min.js:100:50)
at h.$apply …
Run Code Online (Sandbox Code Playgroud)

javascript google-chrome angularjs

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