在我的应用程序中,我有一个组件,我想使用外部的 css prop 对其进行样式设置。
function Component({css}:{css?: React.CSSProperties}) {
// some stuff going on here
return (
<div
css={{
color: blue,
...css
}}
>
// some stuff going on here
</div>
)
}
Run Code Online (Sandbox Code Playgroud)
背景如下:我想Component在不同的场景中使用,我必须根据周围的布局来设置容器的样式。例如,flex、grid 或与某些组件结合使用时,我必须添加不同的边距。
现在,我希望能够从组件外部设置容器的样式,而不是为所有可能的场景引入许多道具。
例如,该组件的用法可以是:
function Layout() {
return (
// some other components
<Component css={{margin: 12}}/>
// some other components
)
}
Run Code Online (Sandbox Code Playgroud)
或者
import {css} from "@emotion/react"
const style = css({margin: 12})
function Layout() {
return (
// some other components
<Component css={style}/>
// some other …Run Code Online (Sandbox Code Playgroud) 我有一个a具有三个维度的张量。第一个维度对应 minibatch 大小,第二个维度对应序列长度,第三个维度对应特征维度。例如,
>>> a = torch.arange(1, 13, dtype=torch.float).view(2,2,3) # Consider the values of a to be random
>>> a
tensor([[[ 1., 2., 3.],
[ 4., 5., 6.]],
[[ 7., 8., 9.],
[10., 11., 12.]]])
Run Code Online (Sandbox Code Playgroud)
我有第二个二维张量。它的第一维对应于小批量大小,第二维对应于序列长度。它包含 的第三维索引范围内的值a。as 第三维的大小为 3,因此b可以包含值 0、1 或 2。例如,
>>> b = torch.LongTensor([[0, 2],[1,0]])
>>> b
tensor([[0, 2],
[1, 0]])
Run Code Online (Sandbox Code Playgroud)
我想获得一个张量c,其形状为b并包含a由 引用的所有值b。在上面的场景中,我想要:
c = torch.empty(2,2)
c[0,0] = a[0, 0, b[0,0]]
c[1,0] …Run Code Online (Sandbox Code Playgroud) 我想根据参数的类型值调用子例程.我试过以下,但是我收到了一个错误.
parameter, integer:: kind=4
integer(kind):: variable
if (kind==8) then
call routine_kind8(variable)
elseif(kind==4) then
call routine_kind4(variable)
endif
Run Code Online (Sandbox Code Playgroud)
我收到以下错误:
call routine_kind8(variable)
1
Error: Type mismatch in argument 'variable' at (1); passed INTEGER(4) to INTEGER(8)
Run Code Online (Sandbox Code Playgroud)
我怎样才能防止这种情况发生?
routine_kind8可以定义的子程序定义如下:
subroutine routine_kind8(variable)
implicit none
integer(8), intent(in):: variable
call api_write_data_to_file(variable)
end subroutine routine
Run Code Online (Sandbox Code Playgroud)
api_write_data_to_fileapi中的函数where 可以接受任何类型的函数.但是,我无法在参数列表中动态定义种类类型.因此,我必须根据变量的类型调用此例程的不同版本.我可以或者更准确地说不想api_write_data_to_file直接打电话.相反,我想把它称为内部routine_kind8
编译器抱怨int?无法转换为int. 我来自打字稿背景,这可以工作,因为编译器知道这是row不可能的null。我是否遗漏了某些内容,或者我是否必须显式转换row为intwith int test = (int) row?
int? row = GetRowOfCode(excel, code);
if (row != null)
{
int test = row;
}
Run Code Online (Sandbox Code Playgroud)