我有一个这样的路由器:
<Route path="/blog/:date/:folder" render={(props: any) => <Home />
Run Code Online (Sandbox Code Playgroud)
它适用于:
http://localhost/blog/2017-05-20/test
Run Code Online (Sandbox Code Playgroud)
但是,:folder可以有斜杠(子目录),我想一次解析文件夹中的所有路径。
这不是工作:
http://localhost/blog/2017-05-20/test/sub/dir
Run Code Online (Sandbox Code Playgroud)
在这种情况下,我只得到test. 我想:folder作为test/sub/dir一个整体。
有没有办法用 React Router 实现这一点?
预期:
:date => '2017-05-20'
:folder => 'test/sub/dir'
Run Code Online (Sandbox Code Playgroud)
实际的:
:date => '2017-05-20'
:folder => 'test'
Run Code Online (Sandbox Code Playgroud) 我的 Redis 服务器有一个连接类型Cons和一个Subscriber实现。ws 是一个 websocket 库。也没有机会编辑源代码:
use std::collections::HashMap;
use std::fmt::Debug;
use std::sync::atomic::AtomicBool;
use std::sync::{Arc, Mutex};
#[derive(Debug)]
pub struct Consumer {
tag: String,
no_local: bool,
no_ack: bool,
exclusive: bool,
nowait: bool,
subscriber: Box<ConsumerSubscriber>,
pub current_message: Option<bool>,
}
impl Consumer {
pub fn new(
tag: String,
no_local: bool,
no_ack: bool,
exclusive: bool,
nowait: bool,
subscriber: Box<ConsumerSubscriber>,
) -> Consumer {
Consumer {
tag,
no_local,
no_ack,
exclusive,
nowait,
subscriber,
current_message: None,
}
}
pub fn new_delivery_complete(&mut self) {
if …Run Code Online (Sandbox Code Playgroud) 让我们看看这个:
\n\n\xe2\x9c\x93 Hello, \xe4\xb8\x96\xe7\x95\x8c\nRun Code Online (Sandbox Code Playgroud)\n\n正如您所看到的,有一个 unicode 复选标记和中文/日文字符。在 go 中,如果我使用 MSYS 或 linux 环境,我可以轻松打印这些字符。即使在窗户上。但是,我无法在CMD或 中看到它们Powershell。
我懂了:
\n\n\n\n这是我非常基本的代码:
\n\npackage main\n\nimport (\n "fmt"\n)\n\nfunc main() {\n\n fmt.Println("\xe2\x9c\x93 Hello, \xe4\xb8\x96\xe7\x95\x8c")\n // OR\n fmt.Println("\\u2713 Hello, \xe4\xb8\x96\xe7\x95\x8c")\n}\nRun Code Online (Sandbox Code Playgroud)\n\n此外,我有数十个控制台应用程序,它们能够使用 cmd 或 powershell 在我的窗口上显示此类字符。为什么去不了?
\n我有一个像这样的字符串:
ticket:1 priority:5 delay:'2019-08-31 02:53:27.720422' delay:'2019-08-30 00:04:10.681242'
Run Code Online (Sandbox Code Playgroud)
我成功提取ticket,priority但失败了delay。
我想要的是将延迟提取为数组,因此输出将如下所示:
#delays =>
[
"delay:'2019-08-31 02:53:27.720422'",
"delay:'2019-08-30 00:04:10.681242'"
]
Run Code Online (Sandbox Code Playgroud)
到目前为止我尝试过什么?
str = "ticket:1 priority:5 delay:'2019-08-31 02:53:27.720422' delay:'2019-08-30 00:04:10.681242'"
delays = str.scan(/delay:\w+(?:'\w+)*/).flatten
Run Code Online (Sandbox Code Playgroud)
我该如何提取它们?注意,不能保证日期格式与示例中的相同。日期格式可以是任何格式。因此,我们应该关注单引号之间的字符串。
如果可能的结果可能是这样的(这样我就不必再次提取日期了。):
#delays =>
[
"2019-08-31 02:53:27.720422",
"2019-08-30 00:04:10.681242"
]
Run Code Online (Sandbox Code Playgroud) 我想提取 subreddits 并以列表形式向用户显示。当用户从选项菜单中更改 subreddit 时,我会将状态推送到浏览器历史记录。
现场演示: https: //react-7qfrxx.stackblitz.io
再生产:
frontend。列出后reactjs再次选择。实时编辑器:https://stackblitz.com/edit/react-7qfrxx
在AsyncApp.js 中Line 36:
this.props.dispatch(push('/' + nextSubreddit))
Run Code Online (Sandbox Code Playgroud)
当按下后退/前进时,如何向用户显示上一个或下一个缓存/状态?有人可以编辑我的在线应用程序以向我展示正确的方法吗?我两天以来一直在尝试解决这个问题,但没有成功。
我需要在不刷新页面的情况下执行此操作。(异步)
我将File来自浏览器的对象(通过删除)传递给这样的函数:
// .... logic here...
accept(file)
public static accept(file: File) {
console.log(file)
/* prints:
=> lastModified: 1555453309243
lastModifiedDate: Wed Apr 17 2019 01:21:49 GMT+0100 (GMT+01:00) {}
name: "test.txt"
path: "test.txt" --> as you can see there is a path variable in here.
size: 16
type: "text/plain"
webkitRelativePath: ""
__proto__: File
*/
console.log(file.name) // => prints 'test.txt'
console.log(file.size) // => prints '16'
console.log(file.path) // => !! error given. path does not exists in File object. Also IDE does not …Run Code Online (Sandbox Code Playgroud) 我想过滤带有gold徽章的行。我正在使用 PG12,并且使用它的新路径功能。
为了澄清一下,我有一个users_tbl这样的表:
CREATE TABLE users_tbl (
ID serial NOT NULL PRIMARY KEY,
data jsonb NOT NULL
);
Run Code Online (Sandbox Code Playgroud)
让我们插入值:
INSERT INTO users_tbl (ID, data) values (1, '{"badges": ["gold", "silver"], "another_field": 1}');
INSERT INTO users_tbl (ID, data) values (2, '{"badges": ["silver"], "another_field": 3}');
INSERT INTO users_tbl (ID, data) values (3, '{"badges": ["gold"], "another_field": 4}');
Run Code Online (Sandbox Code Playgroud)
现在当我这样查询时:
SELECT
ID, jsonb_path_query("data", '$.badges') AS "badges"
FROM "users_tbl";
Run Code Online (Sandbox Code Playgroud)
我得到了预期的以下结果:
+----+--------------------+
+ ID | badges +
+----+--------------------+
+ 1 | ["gold", "silver"] + …Run Code Online (Sandbox Code Playgroud) 我想获得任何额外的GET和POST PARAMS Rails中没有Rails的自己的添加,如controller,format等...
params.inspect给了我我想要的东西,但它有一些 Rails 为我添加的键,例如controller或format。我只想获取用户输入GET和POST参数作为哈希值。我怎样才能做到这一点?我找不到任何东西。
网址:
http:/test.com/some/path?query1=1&query2=1
跑:
puts params.inspect
预期的:
{"query1"=>"1", "query2"=>"1"}
实际的:
{"query1"=>"1", "query2"=>"1", "format"=>":json", "controller"=>"get", "action"=>"index", "folder"=>"some/path"}
这也可以与 POST 请求结合使用。我只想过滤它们并且只将它们作为哈希值。
我从控制器内部执行此操作。使用导轨 5。
我有一个HashMap<u32, Sender>.Sender是一个打开的连接对象,键是用户ID.每个用户都可以从多个设备连接.我需要为同一个用户ID存储所有可能的打开连接.在此之后,我可以迭代并向同一用户的所有打开的连接发送消息.
以上HashMap仅存储每个用户ID和连接一次.我需要获得一个具有多个值的键.如何将值转换为列表或数组,以便我可以看到哪些连接存在并发送给它们?
我不是在谈论不同的价值类型,比如枚举.我说的是相同的类型值但不止一个.也许HashMap不是为此设计的?
其他想法也受到欢迎.
我有一系列像这样的哈希:
arr = [
{ email: 'prathab@hotmail.in', valid: true },
{ email: 'another@mail.com', valid: false }
]
Run Code Online (Sandbox Code Playgroud)
我需要检查是否email: 'prathab@hotmail.in'和valid: true在一个单一的哈希都存在.
如何在不使用each循环的情况下检查数组中的此类哈希?
目前我这样做:
found = false
arr.each do|v|
if v[:email] == 'prathab@hotmail.in' && v[:valid] == true
found = true
break
end
end
Run Code Online (Sandbox Code Playgroud) 我的应用程序中有这一行:
const createdOn: moment.Moment = moment.utc(created_on)
Run Code Online (Sandbox Code Playgroud)
created_on来自 API 端点,格式如下:
{
...,
created_on: "2019-03-08T15:32:26.285Z",
}
Run Code Online (Sandbox Code Playgroud)
这基本上created_on作为 UTC 时区导入。created_on也是UTC。因此,此方法不会破坏时区并正确导入 UTC。我还有这个:
这会生成 UTC 时区的当前时间戳。
moment.utc()
Run Code Online (Sandbox Code Playgroud)
请注意,如果我只是将日期导入到时刻,然后将其转换为 UTC,我的时间就会出错。默认情况下,时刻假定给定日期等于当前访问者时区。我需要按原样导入时间。始终是 UTC。
的等价物是什么Luxon?
您可能认为这是一个经典的“全局”命令问题,但事实并非如此。
我可以通过以下方式全局设置红宝石:
rbenv global 2.5.1
Run Code Online (Sandbox Code Playgroud)
但是,这使得ruby2.5.1对于所有用户都是全局的,但对于整个系统而言则不是。当同一服务器中的应用程序要调用ruby或access / pipe ruby时,它们会command not found出错。
我认为,我们应该有安装或符号链接/usr/bin或/usr/local/bin什么的...
我找不到与此有关的任何内容。如何使选定的红宝石版本可供其他应用程序查看?
我唯一的解决方案是将ruby自己构建到系统目录,但这将与rbenv冲突。
例子:
解决方法:
将/root/.rbenv/shims文件夹添加到$PATH执行的脚本中可以按预期工作,但是在某些情况下,无法直接进行修改$PATH。我在这里有什么选择?
我有 3 个复杂的表。对于这个问题,我就简化一下用法。我需要排名、计数(重复)和唯一记录(结果)。它适用于单个表,但是,当WITH包含并INNER JOIN给出另一个表时,我不再获得任何记录。
CREATE TABLE public.emails (
id bigint NOT NULL PRIMARY KEY GENERATED BY DEFAULT AS IDENTITY
(MAXVALUE 9223372036854775807),
sender jsonb NOT NULL
);
CREATE TABLE public.contacts (
id bigint NOT NULL PRIMARY KEY GENERATED BY DEFAULT AS IDENTITY
(MAXVALUE 9223372036854775807),
email text NOT NULL,
full_name text NOT NULL
);
-- sample data
insert into emails (sender) VALUES ('{"email": "dennis1@example.com", "name": "dennis1"}');
insert into emails (sender) VALUES ('{"email": "dennis1@example.com", "name": "dennis1"}');
insert into …Run Code Online (Sandbox Code Playgroud) ruby ×4
javascript ×3
postgresql ×2
reactjs ×2
rust ×2
sql ×2
arrays ×1
console ×1
datetime ×1
ecmascript-6 ×1
go ×1
hash ×1
hashmap ×1
html ×1
json ×1
jsonb ×1
luxon ×1
momentjs ×1
multimap ×1
powershell ×1
rbenv ×1
redux ×1
regex ×1
typescript ×1
ubuntu ×1