我正在尝试将 Storybook 添加到现有的 React 应用程序中,但在导入的 svg 文件中出现错误。svg 被导入并使用如下:
import Border from './images/border.inline.svg'
...
<Border className="card__border" />
Run Code Online (Sandbox Code Playgroud)
这在应用程序运行和构建时有效,但在 Storybook 中出现错误。怎么来的?
Failed to execute 'createElement' on 'Document': The tag name provided ('static/media/border.inline.258eb86a.svg') is not a valid name.
Error: Failed to execute 'createElement' on 'Document': The tag name provided ('static/media/border.inline.258eb86a.svg') is not a valid name.
Run Code Online (Sandbox Code Playgroud)
默认的 webpack.config.js 有:
...
{
test: /\.inline.svg$/,
loader: 'svg-react-loader'
},
...
Run Code Online (Sandbox Code Playgroud)
此外,现有代码使用 webpack 3,而我使用的是 Storybook V4。
我有一个这样的关联设置:
m.User.hasMany(m.Interests, { joinTableName: 'user_interests', foreignKey: 'user_id' });
m.Interests.hasMany(m.User, { joinTableName: 'user_interests', foreignKey: 'interest_id' });
Run Code Online (Sandbox Code Playgroud)
Sequelize很棒,因为我可以做user.getInterests.但是,我如何添加新关联?
我正在创建一个自定义记录器,我们可以在其中登录到 std out 和 std err,但也增加了登录到 kafka 的可能性(代码示例在这里:https : //github.com/roppa/kafka-go)。我们有多个主题,所以我们需要多个记录器,但是当我们使用多个记录器时,我们会发生一些奇怪的事情。当两个 kafka-go 设置都是异步时,我没有收到消费者消息,当一个是异步的,另一个是同步的,我们会得到这样的消息:
//consumer topica
{"level":"\u001b[34mINFO\u001b[0m","timeStamp":"2020-12-09T15:31:04.023Z","msg":"topic-a log 1","UID":"abc123","ns":"test-service"}
{"level":"\u001b[34mINFO\u001b[0m","timeStamp":"2020-12-09T15:31:05.078Z","msg":"topic-a log 2","UID":"abc123","ns":"test-service"}
{"level":"\u001b[34mINFO\u001b[0m","timeStamp":"2020-12-09T15:31:06.085Z","msg":"topic-a log 3","UID":"abc123","ns":"test-service"}
//consumer topicb
2020-12-09T15:31:06.085Z INFO topic-a log 3 {"UID": "abc123", "ns": "test-service"}
2","UID":"abc123","ns":"test-service"}
Run Code Online (Sandbox Code Playgroud)
更改同步会产生完全不同的效果。我对 Go 很陌生。
这是 main.go:
//consumer topica
{"level":"\u001b[34mINFO\u001b[0m","timeStamp":"2020-12-09T15:31:04.023Z","msg":"topic-a log 1","UID":"abc123","ns":"test-service"}
{"level":"\u001b[34mINFO\u001b[0m","timeStamp":"2020-12-09T15:31:05.078Z","msg":"topic-a log 2","UID":"abc123","ns":"test-service"}
{"level":"\u001b[34mINFO\u001b[0m","timeStamp":"2020-12-09T15:31:06.085Z","msg":"topic-a log 3","UID":"abc123","ns":"test-service"}
//consumer topicb
2020-12-09T15:31:06.085Z INFO topic-a log 3 {"UID": "abc123", "ns": "test-service"}
2","UID":"abc123","ns":"test-service"}
Run Code Online (Sandbox Code Playgroud)
这是记录器/logger.go:
package main
import (
"context"
"kafka-log/logger"
)
func main() {
loggerA := logger.Init("test-service", "localhost:9092", …Run Code Online (Sandbox Code Playgroud) 我把Mongodb从一个容器搬到了一个本地服务(当集装箱化时它真的很脆弱).问题是我无法从Node api连接到本地运行的MongoDB服务.我可以在我的Mac上使用它,但不能在Ubuntu上运行.我试过了:
- DB_HOST=mongodb://172.17.0.1:27017/proto?authSource=admin
- DB_HOST=mongodb://localhost:27017/proto?authSource=admin
// this works locally, but not on my Ubuntu server
- DB_HOST=mongodb://host.docker.internal:27017/proto?authSource=admin
Run Code Online (Sandbox Code Playgroud)
尝试将此添加到我的docker文件:
ip -4 route list match 0/0 | awk '{print $3 "host.docker.internal"}' >> /etc/hosts && \
Run Code Online (Sandbox Code Playgroud)
也试过网桥无济于事.示例docker compose
version: '3.3'
services:
search-api:
build: ../search-api
environment:
- PORT=3333
- DB_HOST=mongodb://host.docker.internal:27017/search?authSource=admin
- DB_USER=dbuser
- DB_PASS=password
ports:
- 3333:3333
restart: always
Run Code Online (Sandbox Code Playgroud) 标题听起来很复杂.我有一个用户表,每个用户可以有多个兴趣.这些兴趣通过查找表链接到用户.在PHP中,我查询了users表,然后为每个人做了查询以查找兴趣.我如何在Node.js/Sequelize中执行此操作?我怎样才能设定某种承诺呢?例如:
sequelize.query("SELECT * FROM users").success(function(users) {
for (var u in users) {
sequelize.query("SELECT interests.id, interests.title FROM interests, user_interests WHERE interests.id = user_interests.interest_id AND user_interests.user_id = " + users[u].id).success(function(interests) {
if (interests.length > 0) {
users[u].interests = interests;
}
});
}
return users;
Run Code Online (Sandbox Code Playgroud)
});
结构在这里:http://jsfiddle.net/9ghUA/1/我有3篇文章,每篇文章都有一篇特色文章.每2个,3个,6个,7个,10个,11个,14个,15个等块的特色文章应该位于2个较小的文章之下.
<div class="group">
<article class="feature">
<h1>Block 1</h1>
<div></div>
</article>
<article>
<h1>heading</h1>
<div></div>
</article>
<article>
<h1>heading</h1>
<div></div>
</article>
</div>
<div class="group">
<article class="feature">
<h1>Block 2</h1>
<div></div>
</article>
<article>
<h1>heading</h1>
<div></div>
</article>
<article>
<h1>heading</h1>
<div></div>
</article>
</div>
Run Code Online (Sandbox Code Playgroud)
那个css子选择器会是什么?我无法弄清楚算法是什么?
我们永远使用并且运行了许多Node.js应用程序.当我们做"永远列表"时,我们看到:
info: Forever processes running
data: uid command script forever pid logfile uptime
data: [0] /usr/bin/node app.js 27944 5656 /home/....log 1:16:27:52.625
...
Run Code Online (Sandbox Code Playgroud)
我们有许多应用程序都称为"app.js",所以我们真的不清楚哪个应用程序是什么.有没有办法永远配置,所以它可以包括脚本路径或什么?我们是否必须将所有"app.js"文件重命名为其他文件?
我正在看Mozilla范围备忘单,它说:
VAR
我找不到任何关于"无操作"定义的提法?这是什么意思?这是否意味着"没有操作",这意味着它不会重新声明它,只是改变价值?
javascript ×2
node.js ×2
sequelize.js ×2
apache-kafka ×1
css ×1
docker ×1
forever ×1
go ×1
localhost ×1
reactjs ×1
storybook ×1
uber-zap ×1
webpack ×1