小编sar*_*den的帖子

如何在 VS Code 中禁用 ^M 行结尾?

VS Code 决定开始^M在我编辑的任何行的末尾添加字符。
它们在编辑器中不可见,但git diff会拾取它们。

奇怪的行结尾。

以前没有这样做过,所以我猜我不小心碰到了一些键盘快捷键。

有谁知道如何关闭它并让它只使用常规行结尾?

git newline line-endings carriage-return visual-studio-code

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

如何在Cloud Firestore查询中加入多个文档?

我有一个具有以下结构的Cloud Firestore DB:

  • 用户
    • [UID]
      • 名称:"测试用户"
  • 帖子
    • [ID]
      • 内容:"只是一些测试帖."
      • 时间戳:( 2017年12月22日)
      • uid:[uid]

实际DB中存在更多数据,上面仅说明了集合/文档/字段结构.

我在我的网络应用程序中有一个视图,我正在显示帖子,并希望显示发布的用户的名称.我正在使用以下查询来获取帖子:

let loadedPosts = {};
posts = db.collection('posts')
          .orderBy('timestamp', 'desc')
          .limit(3);
posts.get()
.then((docSnaps) => {
  const postDocs = docSnaps.docs;
  for (let i in postDocs) {
    loadedPosts[postDocs[i].id] = postDocs[i].data();
  }
});

// Render loadedPosts later
Run Code Online (Sandbox Code Playgroud)

我想要做的是通过存储在post的uid字段中的uid查询用户对象,并将用户的name字段添加到相应的loadedPosts对象中.如果我一次只加载一个帖子就没问题,只需等待查询返回一个对象,然后在.then()函数中再向用户文档发出查询,依此类推.

但是因为我一次收到多个帖子文档,所以我很难弄清楚如何在调用.get()每个帖子的user/[uid]文档之后将正确的用户映射到正确的帖子,因为他们返回了异步方式.

谁能想到这个问题的优雅解决方案?

javascript firebase google-cloud-firestore

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

Android Studio:安装失败,原因是:'device 'xxxxxxxx' not found'

我正在努力解决将 Android Studio 连接到我的 Google Pixel 2 的问题。

当我将手机插入笔记本电脑时,Android Studio 现在可以识别物理设备,并在运行该应用程序的设备下拉列表中显示“Google Pixel 2”。当我去运行该应用程序时,它编译没有错误,但是当它尝试在我的手机上安装该应用程序时,我的手机和 AS 之间的连接丢失(该设备不再列在下拉列表中)并且此错误消息显示在运行对话框:

06/12 17:08:35: Launching 'app' on Google Pixel 2.
Installation did not succeed.
The application could not be installed.

List of apks:
[0] '/home/kirk/Apps/xxxx/android/app/build/outputs/apk/debug/app-debug.apk'
Installation failed due to: 'device 'xxxxxxxx' not found'
Retry
Run Code Online (Sandbox Code Playgroud)

单击Retry链接只会导致它在模拟器中启动。

我尝试断开并重新连接设备,撤销 USB 调试授权,然后重新信任我的计算机,以及关闭并重新打开 Android Studio。

有任何想法吗?

android android-studio

10
推荐指数
2
解决办法
3051
查看次数

在没有服务的情况下从ng-include中继承外部控制器的范围?

在AngularJS中,是否可以从包含的部分内部继承父控制器的作用域,而不是通过注入的服务传递数据?

示例案例:

让我们说ParentCtrl范围看起来像:{ testData: 'testing stuff' }

<div ng-controller="ParentCtrl">
    Here we're defined: {{testData}}
    <div ng-include="'partial.html'"></div>
</div>
Run Code Online (Sandbox Code Playgroud)

内部partial.html:

<em>Inherited: {{testData}}</em>
Run Code Online (Sandbox Code Playgroud)

因此,部分甚至不需要它自己的控制器.如果这是不可能的,你只能通过服务在控制器之间传递注入的数据,为什么Angular会这样做?

javascript angularjs angularjs-scope

8
推荐指数
1
解决办法
6282
查看次数

如何在云函数中进行幂等聚合?

我正在开发一个Firebase云功能,可以更新我的数据库中某些文档的一些聚合信息.这是一个非常简单的功能,只需将1个文档计数加1即可.与Firestore文档中示例函数非常相似.

我刚刚注意到,在创建单个新文档时,该函数被调用了两次.请参见下面的屏幕截图,并注意记录的文档ID(iDup09btyVNr5fHl6vif)重复两次:

在此输入图像描述

经过一番挖掘,我发现这个SO帖子说的如下:

目前不保证传递函数调用.随着Cloud Firestore和Cloud Functions集成的改进,我们计划保证"至少一次"交付.但是,在测试期间可能并非总是如此.这也可能导致单个事件的多次调用,因此对于最高质量的函数,确保函数被写为幂等的.

(来自Firestore文档:限制和保证)

这导致我的文档出现问题.如上所述的云函数意味着是幂等的(换句话说,无论函数运行一次还是多次运行,它们改变的数据应该相同).然而,我之前链接的示例函数(对我来说)并不是幂等的:

exports.aggregateRatings = firestore
  .document('restaurants/{restId}/ratings/{ratingId}')
  .onWrite(event => {
    // Get value of the newly added rating
    var ratingVal = event.data.get('rating');

    // Get a reference to the restaurant
    var restRef = db.collection('restaurants').document(event.params.restId);

    // Update aggregations in a transaction
    return db.transaction(transaction => {
      return transaction.get(restRef).then(restDoc => {
        // Compute new number of ratings
        var newNumRatings = restDoc.data('numRatings') + 1;

        // Compute new average …
Run Code Online (Sandbox Code Playgroud)

firebase google-cloud-functions google-cloud-firestore

8
推荐指数
1
解决办法
958
查看次数

SQL匹配特殊字符正则表达式

我正在寻找一个SQL语句,它只返回我的表的行,其中的Name字段包含特殊字符(不包括下划线).

我试过了:

SELECT * FROM 'table' WHERE Name REGEXP '^[!#$%&()*+,\-./:;<=>?@[\\\]^`{|}~]+$'
Run Code Online (Sandbox Code Playgroud)

但是没有骰子,这会返回一个空结果集(尽管我专门添加了包含%, $, and #字符的Name字段的行).

mysql sql database

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

SVG xmlns属性有什么作用?

我见过嵌入式SVG的源代码,如下所示:

<svg>...</svg>
Run Code Online (Sandbox Code Playgroud)

和其他看起来像:

<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">...</svg>
Run Code Online (Sandbox Code Playgroud)

具体指定xmlns/xmlns:xlink属性是做什么的?

xml html5 svg

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

选择元素之前的所有元素与类?

在CSS中,是否可以在具有给定类的元素之前选择所有元素?

示例HTML:

<div>
    <a href>One</a>
    <a href>Two</a>
    <a href>Three</a>
    <a href class="active">Four</a>
    <a href>Five</a>
</div>
Run Code Online (Sandbox Code Playgroud)

和CSS:

.active:(all-before) {
    border-left: solid 1px #C0FFEE;
}
Run Code Online (Sandbox Code Playgroud)

所以链接'One','Two'和'Three'会有左边框但是'Four'和'Five'不会.

html css

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


React Router V4交换机vs div?

我已经看到许多示例说,使用React Router V4时,您可以将<Route />组件包装在<Switch>React Router提供的组件中,也可以使用任何其他元素包含路由(例如<div>)。

这两种方法有什么区别?

例子:

<BrowserRouter>
  <div>
    <Route exact path="/login" component={LoginScreen} />
    <Route path="/loading" component={LoadingScreen} />
  </div>
</BrowserRouter>
Run Code Online (Sandbox Code Playgroud)

VS

<BrowserRouter>
  <Switch>
    <Route exact path="/login" component={LoginScreen} />
    <Route path="/loading" component={LoadingScreen} />
  </Switch>
</BrowserRouter>
Run Code Online (Sandbox Code Playgroud)

reactjs react-router-v4

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