小编Kir*_*lee的帖子

用于解决fibonacci的Java 8 Lambda表达式(非递归方式)

我是Java 8中使用Lambda表达式功能的初学者.Lambda表达式在解决Prime数字检查,阶乘等程序方面非常有用.

然而,它们可以有效地用于解决像Fibonacci这样的问题,其中当前值取决于前两个值的总和.我已经很好地使用Lambda表达式有效地解决了素数检查问题.下面给出了相同的代码.

boolean checkPrime=n>1 && LongStream.range(2, (long) Math.sqrt(n)).parallel().noneMatch(e->(n)%e==0);
Run Code Online (Sandbox Code Playgroud)

在方法的上述代码中,noneMatch我们使用范围中的当前值(e)进行评估.但对于Fibonacci问题,我们需要前两个值.

我们怎样才能实现呢?

java lambda functional-programming java-8 java-stream

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

无法将Yii2对象数据作为Json返回

我是Yii2框架和PHP的新手.当我尝试从服务器检索模型数据时json,我得到一个空的结果.但是,当我使用时var_dump,我得到一个非空的结果.

控制器类代码:

public function actionIndex() {          
    $client = new Client();
    $client->name = "ajith";
    echo json_encode($client);
}
Run Code Online (Sandbox Code Playgroud)

模型类代码:

class Client extends \yii\mongodb\ActiveRecord {
    public static function collectionName() {
        return ['gym', 'client'];
    }

    public function attributes() {
        return ['_id', 'name', 'age', 'sex', 'phoneno', 'email', 'address', 'location'];
    }

    public function rules() {
        return [
            [['name', 'age', 'sex', 'phoneno', 'email', 'address', 'location'], 'safe']
        ];
    }

    public function attributeLabels() {
        return [
            '_id'  => 'ID',
            'name' => 'Name',
            'age'  => 'Age', …
Run Code Online (Sandbox Code Playgroud)

php json mongodb yii2

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

使用来自 API 响应的数据在 Nuxt JS 应用程序中的 <head> 标签内注入动态内容

我目前正在开发一个 NUXT 应用程序,需要在<head>所选页面的部分内添加一些动态内容。需要插入页面的内容<head>来自应用程序最初启动时的一次性 API 响应 (nuxtServerInit)。这将依次存​​储在 VUEX 中。对象结构看起来像

[{
   pages:['index','home','..',....],
   script:'<script>....</script><script>...</script>,<link href="someCss.css</link>"'
},
{
   pages:['about','..',...],
   script:'<script>....</script><script>...</script>,<link href="someOtherCss.css</link>"'
}]
Run Code Online (Sandbox Code Playgroud)

所以脚本应该<head>根据配置被注入/删除到页面的部分(即关键脚本内的内容应该放在里面<head>)。我对此进行了研究,我发现 NUXT 提供了一个可以在组件/布局内部使用的 head 函数,该函数返回的对象可以根据页面路由名称动态构造

//dynamically generate head scripts based on page route 
head () {
    return getScriptsForThisPage()        
  }
Run Code Online (Sandbox Code Playgroud)

但问题是关键脚本包含应该直接在<head>标签内部使用的脚本、外部链接、元信息。所以那些解析逻辑需要写在函数 getScriptsForThisPage() 中才能使用 NUXT head() 函数。如果我们可以直接将脚本键中的任何内容添加到<head>标签中,那将会很方便。

有没有比这更好/更聪明的方法

更新 -<head>应该在页面加载之前填充(SEO 目的),所以我们不应该使用客户端 DOM 操作方法

javascript vue.js nuxt.js

5
推荐指数
0
解决办法
1823
查看次数

在 Nuxt 应用程序中集成 Google Optimize

我正在尝试在我的 Nuxt 应用程序中使用 Google Optimize。我需要一种在任何页面组件更新后触发激活事件的方法。当前的问题是 API 可能会返回数据,并使用 API 数据在页面加载时重新渲染 DOM。之后我需要触发激活事件。用于在 SPA 中触发激活事件的 google 文档如下在单页应用程序触发激活

对于 angular 应用程序,它是通过添加来完成的

myapp.run(function($rootScope, $timeout) {
   $rootScope.$watch(function(){
     $timeout(function(){
       dataLayer.push({'event': 'optimize.activate'});
     },0,false);
   })
})
Run Code Online (Sandbox Code Playgroud)

我正在 Nuxt 应用程序中寻找类似的替代方案

我知道在组件内部,我可以updated在内容更新和 DOM 重新渲染后监听生命周期钩子。但是,当任何组件更新或 DOM 重新呈现时,我需要一种在中央位置执行某些代码的方法。

我使用的是我在目录中创建了一个全局 mixin ( globalMixin.js)plugins并使用了它的updated生命周期方法。因此,此混合代码被注入到每个组件中,并且如果这些组件数据中的任何一个发生更改,则更新方法将被调用。但我怀疑这种方法是否是理想的解决方案。

任何人都可以向我建议一种更好的方法来完成这项任务,或者 Nuxt/Vue 是否有任何标准的方法来做到这一点?里面的代码plugins/globalMixin.js如下:

if (!Vue.__my_mixin__) {
      Vue.__my_mixin__ = true
      Vue.mixin({
        updated() {
        ..execute some code
       }
     }) 
    } 
Run Code Online (Sandbox Code Playgroud)

javascript vue.js nuxt.js

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

尝试输出从服务器返回为json的数据时显示未定义的值

我是Yii2框架和PHP的新手.我使用Mongo DB作为后端数据库.我从集合中获取文档并从控制器返回数据作为Json.返回的数据如下所示.

{
    "55b08c383e1a36233fdbdc06": { 
        "_id": { "$id": "55b08c383e1a36233fdbdc06" }, 
        "address": [ "abcdgt", "zxcv" ], 
        "age": "23", 
        "email": [ "qwert@gmail.com","abcd@mail.com" ], 
        "location": "kollam", 
        "name": "ajiths",
        "phoneno": [ "9522585456", "7875642256" ] ,
        "sex": "male" 
     }
}
Run Code Online (Sandbox Code Playgroud)

但是在尝试提醒result.name时,我收到了"Undefined" 在Javascript代码中.前端的代码如下所示.

function loadClient(id){
         url = "<?=  Yii::getAlias('@serverpathweb')?>/client/showclient?id="+id;
           $.ajax({
          url: url ,
          method: "GET",
           success: function(result){
             alert(result.name);

                 }
             });
    }
Run Code Online (Sandbox Code Playgroud)

控制器端的代码如下所示.

public function actionShowclient($id) {

       $clientdetail = Yii::$app->mongodb->getCollection('client');
       $result = $clientdetail->find(["_id" =>$id]);
       Yii::$app->response->format = \yii\web\Response::FORMAT_JSON;
       return $result;
    }
Run Code Online (Sandbox Code Playgroud)

任何人都可以告诉我如何获得值result.name.

javascript php json mongodb yii2

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