小编Dav*_*idB的帖子

如何在localhost上测试打开的图形

我做了很多研究,但没有找到明确的答案.无论如何要测试localhost上的开放图形?在locahost上使用图形api我没有任何问题.

我在应用程序设置中更改了我的网站URL,甚至尝试在我的hosts文件中设置域,但是打开图形的调试器linter尝试使用实际域而不是我的localhost,并且当直接使用locahost时,linter完全无法连接.

有没有人有这方面的解决方法?

testing localhost facebook-graph-api

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

在angularjs指令中的$ index of ngRepeat

我正在尝试找到在与自定义指令一起使用的ngRepeat中获取索引位置的最佳方法.我试图解决的问题是,对于ngRepeat的每次迭代,我都想知道我在迭代中的位置,这样我就可以根据索引位置创建自定义模板.

除非有更好的方法,否则我试图根据指令中的这些文档来执行此功能:

&or&attr - 提供在父作用域的上下文中执行表达式的方法.如果未指定attr名称,则假定属性名称与本地名称相同.范围的给定和窗口小部件定义:{localFn:'&myAttr'},然后隔离范围属性localFn将指向count = count + value表达式的函数包装器.通常需要通过表达式将数据从隔离范围传递到父范围,这可以通过将局部变量名称和值的映射传递到表达式包装器fn来完成.例如,如果表达式是increment(amount),那么我们可以通过将localFn称为localFn({amount:22})来指定金额值.

http://docs.angularjs.org/guide/directive

我很难理解这句话告诉我的内容.所以,我试图做的是这......

首先,ngRepeat指令与我在"testTemplate"中的指令一起使用:

<ul>
   <li my-attr="test()" my-directive ng-repeat="value in values" class="span2">
   </li>
</ul>
Run Code Online (Sandbox Code Playgroud)

接下来,我的指令定义:

angular.module('myModule', [])
       .directive('myDirective', function() {
            return {
                replace : true,
                transclude : true,
                scope : {
                    test: '&myAttr'
                },
                templateUrl: 'partials/myTemplate.html',
                link : function(scope, element, attrs) {
                    alert(scope.count);
                }
            }
        });
Run Code Online (Sandbox Code Playgroud)

最后,我正在尝试在控制器中为引用该指令的父模板定义"test"函数.

function TestTemplateCtrl($scope, testTemplate) {
    $scope.test = function() {
        alert('in test');
        $scope.count = "1";
    }
}
Run Code Online (Sandbox Code Playgroud)

所以第一个问题是父进程中的"test"函数根本没有被执行.也许我不理解如何调用父控制器中的测试功能.现在我实际上也没有增加,但是如果我能够获得测试功能,那么当我达到这一点时,我会采用正确的方法增加计数吗?

angularjs ng-repeat

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

angularjs中的CacheFactory是单身吗?

我使用CacheFactory创建了一个服务.我原以为它是一个单身人士.我将它注入我的控制器,它在控制器的范围内工作正常.但是一旦我转到具有不同范围的不同页面,我似乎没有将缓存中的值存储在不同范围内的同一控制器中.不应该CacheFactory的行为是一个单独的我在那里我有相同的缓存对象我注入CacheService?

这是我的服务作为一个例子:

angular.module('MyService', []).factory('CacheService', function($cacheFactory) {
        return $cacheFactory('cacheService', {
            capacity: 3 // optional - turns the cache into LRU cache
        })
    });
Run Code Online (Sandbox Code Playgroud)

然后在我的控制器中:

function MyController($scope, CacheService) {
   var results= CacheService.get('storedvalue');
   if(!results){
       CacheService.put('storedvalue', results);
      alert('results not stored');
   }
   else
      alert('results stored');
}
Run Code Online (Sandbox Code Playgroud)

angularjs angularjs-service

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

Datanucleus在Google App Engine 1.7中使用了错误的增强器

我很难让Datanucleus 2在Eclipse中使用Datanucleus插件增强GAE 1.7.0上的类来正常工作.当我按照这里的手动步骤操作时,这在旧版GAE中运行良好:

http://www.datanucleus.org/products/accessplatform/guides/eclipse/index.html

但是自从升级以来,GAE现在包含了这些库(它们的新版本看起来像),并且GAE还有一个可以设置的新"增强器"标志.我无论如何都无法在Eclipse中设置此标志.当我想要V2库并且Datanucleus根据此错误发生冲突时,GAE似乎仍然包含v1库:

Jul 1, 2012 5:59:55 PM org.datanucleus.enhancer.DataNucleusEnhancer <init>
INFO: DataNucleus Enhancer : Using ClassEnhancer "ASM" for API "JPA"
Exception in thread "main" java.lang.NoSuchFieldError: NUCLEUS_CONTEXT_LOADER
    at org.datanucleus.NucleusContext.<clinit>(NucleusContext.java:73)
    at org.datanucleus.enhancer.DataNucleusEnhancer.<init>(DataNucleusEnhancer.java:171)
    at org.datanucleus.enhancer.DataNucleusEnhancer.main(DataNucleusEnhancer.java:1265)
Run Code Online (Sandbox Code Playgroud)

我尝试了很多不同的东西.我尝试过使用所有默认设置.我已经尝试将v2库添加到Datanucleus运行时类路径条目.我试过在src和libs中删除GAE 1.7.0 SDK中的v1库.但不知怎的,GAE仍在继续(或者试图超越V1库.我甚至尝试过手动设置配置的旧方法,如上面链接所指定的.这有点令人沮丧,因为我现在好像在我根本无法使用这些库的情况下.至少在旧版本的GAE中我可以手动设置它起作用.现在似乎什么都没有用.有什么建议吗?

google-app-engine datanucleus jpa-2.0

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