小编L. *_* S.的帖子

Flexbox,画布和动态调整大小

我的基于画布的应用程序遇到了麻烦.

我有4个(或更多)画布,每个画布都包含在内容中.那些包装器本身被包装成"hbox".目标是使用创建一个动态的画布网格flexbox.

<div id="primaryScene" class="scene">
    <div class="hbox" id="hbox0" style="flex-grow: 1.2;">
        <div class="viewWrapper" id="view0" style="flex-grow: 0.4;">
            <canvas class="canvasView"></canvas>
            <aside class="sideContent"></aside>
        </div>
        <div class="viewWrapper" id="view1" style="flex-grow: 1.6;">
            <canvas class="canvasView"></canvas>
            <aside class="sideContent"></aside>
        </div>
    </div>
    <div class="hbox" id="hbox1" style="flex-grow: 0.8;">
        <div class="viewWrapper" id="view2">
            <canvas class="canvasView"></canvas>
            <aside class="sideContent"></aside>
        </div>
        <div class="viewWrapper" id="view3">
            <canvas class="canvasView"></canvas>
            <aside class="sideContent"></aside>
        </div>
    </div>
</div>
Run Code Online (Sandbox Code Playgroud)

用css:

.scene {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: column;
    flex-flow: column;
    overflow: hidden;
}

.hbox {
    min-height: 0;
    -webkit-flex: 1 1 0%;
    flex: 1 …
Run Code Online (Sandbox Code Playgroud)

javascript css html5 canvas flexbox

14
推荐指数
1
解决办法
2765
查看次数

获取 TypeScript 中类型的类名

在 TypeScript 4.1 中,是否可以获取字符串类型的类名或函数名?

例如

class Foo { }

type Tpl = `${Foo["name"]}_${"a" | "b" | "c"}`; // error
// should be
// "Foo_a" | "Foo_b" | "Foo_c"
Run Code Online (Sandbox Code Playgroud)

编辑(扩展用例)

由于第一个示例不够明确,可以使用"Foo_a" | "Foo_b" | "Foo_c"as 类型来解析,这里是另一个示例。


class Animal { /* code */ }
class Dog extends Animal { }
class Cat extends Animal { }
class Duck extends Animal { }
// also, someone outside my original code decide to implement another
// animal, and so on. (for example, …
Run Code Online (Sandbox Code Playgroud)

types string-literals typescript template-literals

6
推荐指数
0
解决办法
1421
查看次数