我正在学习 Akita 以向 Angular 应用程序添加状态管理。在查看Akita 文档中的架构图和Akita GitHub 存储库中的示例(例如此示例)时,我看到 Query 是直接在组件中访问的。我很惊讶地看到这一点,因为我预计应用程序的状态管理部分将隐藏在服务后面,并从消费者(即组件)中抽象出来。与 Query 不同的是,Store 隐藏在 Service 后面,不能直接在组件中访问。在我看来,如果 Query 隐藏在 Service 后面,就像 Store 隐藏在 Service 后面一样,那么消费者只需要为每个数据源导入一件事,即服务。
所以我的问题是为什么 Akita 希望我们直接在组件中访问 Query 而不是 Store?将 Query 隐藏在服务背后是否有不利之处?
Go 1.16 添加了新的嵌入包。我想使用这个包来嵌入一个目录并通过 HTTP 提供它。考虑以下设置:
myproject/
|-- main.go
|-- static/
| |-- index.html
| |-- styles.css
| |-- scripts.js
Run Code Online (Sandbox Code Playgroud)
myproject/
|-- main.go
|-- static/
| |-- index.html
| |-- styles.css
| |-- scripts.js
Run Code Online (Sandbox Code Playgroud)
通过此设置,我的期望是我可以将浏览器指向localhost:8080并加载index.html。相反,我观察到的是,我需要将浏览器指向localhost:8080/static加载index.html。
如何从 URL 的根路径提供嵌入式文件系统?
考虑以下测试:
import (
"errors"
"fmt"
"testing"
)
func TestError(t *testing.T) {
err := &MyError{}
var target error
fmt.Println(errors.As(err, &target))
}
type MyError struct{}
func (err *MyError) Error() string {
return "oops!"
}
Run Code Online (Sandbox Code Playgroud)
运行此测试会返回构建错误second argument to errors.As should not be *error。
但是,当在 中运行完全相同的代码时main,程序运行没有问题:
package main
import (
"errors"
"fmt"
)
func main() {
err := &MyError{}
var target error
fmt.Println(errors.As(err, &target))
}
type MyError struct{}
func (err *MyError) Error() string {
return "oops!"
}
Run Code Online (Sandbox Code Playgroud)
我在 …
考虑以下设置,其中一个socat实例通过管道将数据传输stdin到 unix 域套接字,另一个实例从 unix 域套接字读取该数据并将其写入stdout:
客户:
(while true; do echo "hello"; sleep 1; done) | socat STDIN UNIX:test.sock
Run Code Online (Sandbox Code Playgroud)
服务器:
socat UNIX-LISTEN:test.sock STDOUT
Run Code Online (Sandbox Code Playgroud)
此设置按预期工作,服务器hello以stdout1 秒的间隔进行打印。有没有办法socat使用SOCK_SEQPACKET套接字类型?
在 Angular CLI 项目中,当使用不受支持的 TypeScript 版本时,您可能会收到以下警告:
@angular/compiler-cli@6.1.0 requires typescript@'>=X.X.X <Y.Y.Y' but Z.Z.Z was found instead.
Using this version can result in undefined behaviour and difficult to debug problems.
Run Code Online (Sandbox Code Playgroud)
可以使用以下命令禁用默认项目的 TypeScript 不匹配警告:
ng config cli.warnings.typescriptMismatch false
Run Code Online (Sandbox Code Playgroud)
现在,在构建 Angular 库时,即使将设置设置为ng-packagr,也会将此警告作为错误抛出。是否可以暂时禁用此错误?据了解,这不应该在生产环境中完成,但在调试可能由 TypeScript 引起的问题时可能会有所帮助。以下StackOverflow 问题作为示例用例。typescriptMismatchfalse
go ×2
angular ×1
angular-cli ×1
go-testing ×1
linux ×1
ng-packagr ×1
prestashop ×1
socat ×1
themes ×1