小编Rop*_*pez的帖子

如何使sed删除与替换不匹配的行

我基本上想要这样做:

cat file | grep '<expression>' | sed 's/<expression>/<replacement>/g'
Run Code Online (Sandbox Code Playgroud)

无需两次写表达式:

cat file | sed 's/<expression>/<replacement>/g'
Run Code Online (Sandbox Code Playgroud)

有没有办法告诉sed不要打印与substitute命令中的正则表达式不匹配的行?

regex sed substitution

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

避免使用 SCSS 和 Vue 3 进行 v-deep 重复

Vue 3 不推荐使用v-deep组合器:https://github.com/vuejs/rfcs/blob/master/active-rfcs/0023-scoped-styles-changes.md

我们有使用 SCSS 的现有代码,v-deep如下所示:

.class ::v-deep {
  .child-class1 {...}
  .child-class2 {...}
}
Run Code Online (Sandbox Code Playgroud)

编译成这样的东西:

.class ::v-deep {
  .child-class1 {...}
  .child-class2 {...}
}
Run Code Online (Sandbox Code Playgroud)

在 Vue 3 中,这种语法已被弃用,我们需要这样做:

.class {
  ::v-deep(.child-class1) {...}
  ::v-deep(.child-class2) {...}
}
Run Code Online (Sandbox Code Playgroud)

我们必须v-deep对每个嵌套规则重复。事实上,还有更多且复杂的规则。

在 SCSS 中是否有任何方法可以构造一个嵌套块,其中所有内部规则都包装到此::v-deep(...)语法中?


我正在寻找类似的东西(不是实际的语法):

::v-deep(&) {
  .child-class1 {...}
  .child-class2 {...}
}
Run Code Online (Sandbox Code Playgroud)

除了自选择器 ( &) 具有相反的含义之外,它引用子选择器而不是父选择器。

sass vue.js vue-loader vuejs3 vue-sfc

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

如何使 Apollo Server RESTDataSource 中的缓存失效

使用文档中的简单“电影 API”示例。我在函数ttl中添加了 a getMovie,以便将结果缓存 10 分钟。如何使updateMovie函数中的缓存失效?

const { RESTDataSource } = require('apollo-datasource-rest');

class MoviesAPI extends RESTDataSource {
  async getMovie(id) {
    return this.get(`movies/${id}`, {}, { cacheOptions: { ttl: 600 } });
  }

  async updateMovie(id, data) {
    const movie = await this.put(`movies/${id}`, data);

    // invalidate cache here?!

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

我知道KeyValueCache传递给 ApolloServer 的接口提供了一个delete函数。但是,该对象似乎没有在数据源中公开。它被包装在 内部HTTPCache,仅公开一个fetch函数。也KeyValueCache被包装在 a 内PrefixingKeyValueCache,因此假设RESTDataSource.

caching apollo-server apollo-datasource-rest

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