小编Teo*_*.sk的帖子

我该如何扩展服务

我相当新,angularjs并且无法找到任何文档或示例.我要做的是扩展基本服务,以便我可以使用其他服务的基本服务定义的方法.例如,假设我有如下基本服务.

angular.module('myServices', []).

    factory('BasicService', function($http){
        var some_arg = 'abcd'
        var BasicService = {
            method_one: function(arg=some_arg){ /*code for method one*/},
            method_two: function(arg=some_arg){ /*code for method two*/},
            method_three: function(arg=some_arg){ /*code for method three*/},
        });
        return BasicService;
    }   
);
Run Code Online (Sandbox Code Playgroud)

现在我想定义一个从上面扩展的扩展服务,BasicService以便我可以使用我的扩展服务在BasicService下定义的方法.也许是这样的:

    factory('ExtendedService', function($http){
        var ExtendedService = BasicService();
        ExtendedService['method_four'] = function(){/* code for method four */}
        return ExtendedService;
    }
Run Code Online (Sandbox Code Playgroud)

javascript angularjs

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

如何在视图更改时从AngularJS调用JQuery函数

我是AngularJS的新手,我在将jQuery自定义内容滚动器实现到我的应用程序时遇到了问题.

当我使用Angular更新内容时,我需要更新滚动条,为此滚动条有一个update方法.我的问题是,我不知道在哪里调用它.内容的标记如下:

<div class="scroll-list nice-scrollbars">
    <ul class="gallery clearfix">
        <li class="extra-alt" ng-repeat="item in relatedItems.data">
            ...
        </li>
    </ul>
</div>
Run Code Online (Sandbox Code Playgroud)

我试图在Angular的成功分支中调用update方法$http.post:

$scope.relatedItems = $http.post($scope.url, {
    'filterType': 'related', 'film': id
}).success(function() {
    $(".nice-scrollbars").mCustomScrollbar('update');
});
Run Code Online (Sandbox Code Playgroud)

这不起作用,我认为是因为调用成功方法时,视图内容尚未更新(我可以使用alert函数看到它,关闭对话框后出现数据)

我能够使滚动条工作的唯一方法是使用滚动条的高级属性来观察内容中的更改(这些是传递给滚动条的选项):

var scrollbarOpts = {
    scrollButtons:{
        enable:true
    },
    advanced:{
        updateOnContentResize: true
        //@TODO: get rid of this, correctly find where to call update method
    }
}
Run Code Online (Sandbox Code Playgroud)

这是不好的做法,因为这个选项会降低整个脚本的性能. 我想知道,根据需要调用更新DOM所需的jQuery方法的正确位置在哪里,或者如何在AngularJS中正确地查看更改?

javascript jquery scrollbar angularjs

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

模块"..."解析为非模块实体,无法使用此结构导入

我有一个.tsx文件,我试图从material-ui导入一个RaisedButton组件,如下所示:

import * as RaisedButton from 'material-ui/lib/raised-button'
Run Code Online (Sandbox Code Playgroud)

但是,这给了我标题中描述的错误,任何想法我可能做错了什么?

typescript material-ui

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

AngularJS | orderBy过滤器未动态更新

orderBy在使用AngularJS中的过滤器时遇到了问题.这是我的设置:

<li ng-repeat="item in listItems.data | orderBy:order">
    <a ng-click="getRelated(item._id)">{{ item.title }}</a>
</li>
Run Code Online (Sandbox Code Playgroud)

控制器的一部分:

$scope.order = 'year';

$scope.listItems = $http.post($scope.url, {'filterType': 'abc', 'letter': $scope.params.letter});

$scope.setOrder = function(order) {
    $scope.order = order;
}
Run Code Online (Sandbox Code Playgroud)

最后我想使用"开关"来订购数据

    <span class="sort--title">Sort by</span>
    <a ng-class="{true:'selected', false:''}[order=='title']" href="" ng-click="setOrder('title')" class="sort--attribute">Title</a>
    <a ng-class="{true:'selected', false:''}[order=='year']" href="" ng-click="setOrder('year')" class="sort--attribute">Year</a>
    <a ng-class="{true:'selected', false:''}[order=='length']" href="" ng-click="setOrder('length')" class="sort--attribute">Length</a>
    <a ng-class="{true:'selected', false:''}[order=='date_added']" href="" ng-click="setOrder('date_added')" class="sort--attribute">Date Added</a>
Run Code Online (Sandbox Code Playgroud)

单击按钮时,列表未重新排序. 当我手动更改初始$scope.order值时,列表由属性排序.也ng-class正确更新.我显然错过了一些东西!

javascript angularjs

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

Sonata Admin:添加自定义触发器/操作以列出/编辑操作

我正在使用SonataAdminBundle我的应用程序中管理实体.该网站的管理员可以添加视频,其中一些首先需要由他们的扬声器批准.已经有一个授权系统正在运行 - 我有一个工作代码,它将生成一个特殊链接,并通知可以批准或拒绝视频的发言人,并自动通知管理员.

我想自定义我的管理部分,因此ask for authorization视频旁边会有一个按钮.我可以在list action(/admin/acme/videos/list)或右边nav(/admin/acme/videos/x/edit/)中的某个编辑操作中使用它

这样做的最佳方法是什么?文档对块自定义说的很少,但我发现这个例子可能是我正在寻找的东西,但我无法弄清楚如何使用它.

一个选项是使用preUpdate钩子,并为编辑操作添加一个复选框,但按钮会更好.

php symfony symfony-sonata sonata-admin

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

Symfony 2表单实体字段类型分组

我正在使用映射到Reservation实体的data_class在Symfony2中呈现一个表单,并且此表单具有类的实体字段类型Service.ReservationService班级之间的关系是多对多的.然后ServiceType,服务具有另一个类,Service该类从类中映射为多个

我想要做的是在预订表格中显示所有服务作为复选框,按服务类型分组.到目前为止,我可以像这样显示所有服务(代码来自ReservationType类):

$builder->add('services','entity', array(
         'class' => 'MyBundle:Service',
         'multiple' => true,
         'expanded'  => true
 ));
Run Code Online (Sandbox Code Playgroud)

并以默认方式显示表单:

<form action="{{ path('reservations', {'step': 2}) }}" method="post" {{    form_enctype(form) }}>
   {{ form_widget(form) }}

   <input type="submit" />
</form> 
Run Code Online (Sandbox Code Playgroud)

结果是这样的:

 ? servicetype1 option
 ? servicetype1 another option
 ? servicetype2 option
 ? servicetype2 another option
Run Code Online (Sandbox Code Playgroud)

我想要实现的是:

servicetype1:
  ? option
  ? another option
servicetype2:
  ? option
  ? another option
Run Code Online (Sandbox Code Playgroud)

我试图通过使用query_builder选项来指定服务的子集,如下所示:

    $builder->add('services','entity', array(
            'class' => 'MyBundle:Service', …
Run Code Online (Sandbox Code Playgroud)

php forms symfony

8
推荐指数
2
解决办法
7746
查看次数