小编flo*_*flo的帖子

合并成功后,Github 仍然显示分支之间的差异

最近,我将一个巨大的拉取请求(140 次提交)从功能分支合并到主分支:

在此输入图像描述

我可以在 master 分支的 github 概览中看到合并:

在此输入图像描述

然而,当我切换到功能分支时,我可以看到该功能提前了 141 次提交(今天我对功能进行了另一次提交),并在 master 后面进行了 1 次提交:

在此输入图像描述

现在的主要问题是,我无法将今天对功能所做的更改合并到 master:

在此输入图像描述

因为 github 似乎想再次提交已经合并的 140 个旧提交(经过一些痛苦的冲突解决之后)

我怎样才能再次同步主控和功能,让它们保持原来的样子:它们之间的区别只是今天开始对功能的提交。

git github git-merge

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

只有在设置了另一个同意 cookie 并且“true”之后,如何设置 Google Analytics cookie?

我正在为我的网站和 react-cookie-consent 库使用 React/Nextjs。它会创建一个弹出窗口,用户可以在其中同意 cookie 策略。如果同意,则设置一个 cookie:值为“true”的 CookieConsent。

此外,我想使用 Google Analytics 来跟踪用户是否同意(单击弹出窗口中的接受)。

但它不起作用:在用户单击弹出窗口之前设置了 Google 分析 cookie _ga 和 G_ENABLED_IDPS。

有趣的是,我只在 Microsoft Edge 浏览器上意识到这一点。在 Chrome 中,这些 cookie 在用户同意之前不会设置。

这是我在 _document.js 中的当前代码:

<Head>
          {/* Global Site Tag (gtag.js) - Google Analytics */}
          <script
            async
            src={`https://www.googletagmanager.com/gtag/js?id=${GA_TRACKING_ID}`}
          />
          <script
            dangerouslySetInnerHTML={{
              __html: `
            window.dataLayer = window.dataLayer || [];
            function gtag(){dataLayer.push(arguments);}            
            gtag('js', new Date());
            
          `}}
          />
          
          <script type="text/javascript" src="/static/blockReactDevTools.js" />
          
          <link href="https://fonts.googleapis.com/css?family=Cabin&display=swap" rel="stylesheet" />

</Head>
Run Code Online (Sandbox Code Playgroud)

我使用互联网上的一些提示进行了尝试,并提出了这个也不起作用的版本:

<Head>
          {/* Global Site Tag (gtag.js) - Google Analytics */} …
Run Code Online (Sandbox Code Playgroud)

javascript cookies google-analytics reactjs next.js

7
推荐指数
2
解决办法
9066
查看次数

在Nextjs中,如何以编程方式触发服务端渲染?

我们知道 Router.push() 触发客户端渲染。但是如何以编程方式触发服务器端渲染到页面?

示例:我有一个登录模式,它在提交时发送一个 api 调用来检查用户数据。一旦我得到用户正常的信息,我想加载一个页面,但通过服务器端渲染。

next.js

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

在大型List中查找具有相同属性的对象 - 性能缓慢

我有一个大List<MyClass>的对象,60万左右 MyClass有像10个特性,让我们说property1,property2等.直到property10.

在该列表中,我想获得一个List<MyClass>包含某些属性具有相同值的对象的List .

这意味着例如,对象,其中property2,property4,property8property10是相同的.

最好的方法是什么?目前我对我做了一个循环List<MyClass>,并在该循环中通过List<MyClass>.FindAll()虚拟代码得到所有类似的对象:

forach(var item in myClassList)
{
   if(!found.Contains(item))
   {
      var similarObjects = myClassList.FindAll(x => x.property2 == item.property2 && x.property4 == item.property4 && x.property8 == item.property8 && x.property10 == item.property10);

      //adding the objects to the "already found" list
      foreach(var foundItem in similarOjbects)
      {
         found.Add(foundItem);
      }

     if(similarObjects.Count > 1)
     {
        similarObjectsList.Add(similarObjects);
     }
   }
}
Run Code Online (Sandbox Code Playgroud)

但这需要很长时间, …

c# list

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

PHP 在 $_POST['myjsonitem'] 时添加双反斜杠,导致 json_decode 结果为 JSON_ERROR_SYNTAX

不敢相信,数以百万计的帖子涵盖了这个主题,但我无法让它发挥作用。

在我的 Android 应用程序中,我向服务器发送齐射 POST 请求。该请求是一个普通的 StringRequest,它包含一个序列化的 json 对象。

在服务器上,POST 请求中的项目像这样到达,我通过提取原始正文数据

$entityBody = file_get_contents('php://input');
Run Code Online (Sandbox Code Playgroud)

=>

myjsonitem=%5B%7B%22description%22%3A%22Back%22%2C%22freeText%22%3A%22%22%2C%22isRated%22%3Atrue%2C%22priceSingle%22%3A12.0%2C%22ratingStar%22%3A4.0%7D%2C%7B%22description%22%3A%22SoronA%22%2C%22freeText%22%3A%22%22%2C%22isRated%22%3Atrue%2C%22priceSingle%22%3A3.5%2C%22ratingStar%22%3A5.0%7D%5D
Run Code Online (Sandbox Code Playgroud)

正如您所看到的,该项目在相应的 json 元素周围带有双引号,对我来说,到目前为止这似乎是正确的。

当我想通过以下方式对字符串进行 json_decode 时,问题就开始了:

$itemList = json_decode($_POST['myjsonitem'], true); 
Run Code Online (Sandbox Code Playgroud)

此命令返回 json_decode 错误 JSON_ERROR_SYNTAX。我不明白为什么,所以我通过以下方式将 json 写入日志:

error_log("Json String: " .$_POST['myjsonitem']);
Run Code Online (Sandbox Code Playgroud)

日志中的结果显示:

Json String: [{\\"description\\":\\"Back\\",\\"freeText\\":\\"\\",\\"isRated\\":true,\\"priceSingle\\":12.0,\\"ratingStar\\":4.0},{\\"description\\":\\"SoronA\\",\\"freeText\\":\\"\\",\\"isRated\\":true,\\"priceSingle\\":3.5,\\"ratingStar\\":4.0}]
Run Code Online (Sandbox Code Playgroud)

如您所见,双引号前面添加了双反斜杠。将此字符串放入 JSON 验证器会返回无效的 json。删除双反斜杠会返回有效的 json。

Magic Quotes 不可能是问题,因为我运行的是 php 7+。

这里发生了什么?如何正确解析PHP?我想,只是简单地删除双反斜杠不会有帮助,在我的 freeText 字段中,我可以有带双引号的字符串,因此在这种情况下转义应该仍然有效。

编辑:这是上下文的关键部分。也许我应该提到,我在 WordPress 安装上运行它,并且在 php 文件的开头,我包含了 wp-load.php。

if($_SERVER['REQUEST_METHOD']=='POST'){

    //getting some other data from request  
    $dateString = $_POST['date'];   
    $date = date('Y-m-d H:i:s', strtotime($dateString));        
    $userId = intval($_POST['userId']); 
    $sentUniqueId = …
Run Code Online (Sandbox Code Playgroud)

php json

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

Python Opencv img.item()性能太慢了

我写了这个小代码来比较两个100x100 jpeg图像的像素灰度值.然而,表现非常令人失望(10,000次比较为1.5秒).有没有办法实现更好的表现?

这是代码:

import cv2
import numpy as np
import math
import datetime


img1 = cv2.imread('Testbild 2014-08-23 17:27:25.141362.jpeg', cv2.IMREAD_GRAYSCALE)
img2 = cv2.imread('Testbild 2014-08-23 17:27:25.061802.jpeg', cv2.IMREAD_GRAYSCALE)

height, width =img1.shape
cnt = 0
threshold = 10

print("start:" + str(datetime.datetime.now()))
for y in range(0 , height):
    for x in range(0 , width):
        val1 = img1.item(y,x)
        val2 = img2.item(y,x)
        diff_abs = math.fabs(int(val1)-int(val2))
        if diff_abs > threshold:
            cnt += 1      
        if x == height and y == width:
            break
        if x == height:
            x=0
        if …
Run Code Online (Sandbox Code Playgroud)

python opencv numpy

0
推荐指数
1
解决办法
996
查看次数

react-native Metro 在 traverseDependency 中抛出错误,package-lock.json 可能是原因吗?

我得到的错误在 github上有详细描述。基本上地铁捆绑器失败并出现以下错误:

错误:捆绑失败:类型错误:无法在 C:\Apps\MyProject 处读取未定义的属性“地图” \rnw\node_modules\metro\src\DeltaBundler\traverseDependencies.js:188:33 at Generator.next () 在步骤 (C:\Apps\MyProject\rnw\node_modules\metro\src\DeltaBundler\traverseDependencies.js:298: 30) 在 C:\Apps\MyProject\rnw\node_modules\metro\src\DeltaBundler\traverseDependencies.js:309:15 在 DELTA [android, dev] ....../index.js ?????? ?????????14.7% (221/612),失败。

此错误消息对我没有多大帮助,因为我对 Metro 捆绑器的工作方式没有深入了解。

所以我检查了我最近在代码中所做的更改,例如我在我的项目中添加了以下内容:

"react-native-tab-view": "^1.3.2",
Run Code Online (Sandbox Code Playgroud)

在那之后,我在 package-lock.json 中有一个奇怪的变化。那里似乎已经存在 react-native-tab-view ,我猜是因为它是我之前导入的另一个项目的依赖项。这是 package-lock.json 中的第一个变化:

首先更改 package-lock.json

好吧,无论如何,这对我来说仍然可以。奇怪的是我看到的第二个变化:

package-lock.json 中的第二个变化

等等,什么?旧版本号为 0.0.77 的 react-navigation-deprecated-tab-navigator 中添加了对 react-native-tab-view 的依赖?这看起来很奇怪,至少对我来说。

有人可以在这里帮助我 - 这种变化是否正常,或者这可能是 Metro bundler 失败的原因?

任何输入表示赞赏!

javascript node.js react-native react-navigation

0
推荐指数
1
解决办法
701
查看次数