可能重复:
使CSS Div宽度等于内容
我试图像应用程序聊天,但现在我运行acros一些小错误.
我有一个div,最大宽度设置为350px.但是当我在其中添加以下文本时:
dddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd
它将在每个空间添加新行,但div的宽度将保持在100px.我在jsFiddle中做了一个小例子:
正如你所看到的那样,黄色框的宽度是100px,而我希望它缩小到文本的宽度.我也尝试使用元素修复它,但黄色框保持不变.
我希望它看起来像第三个盒子,同时保留最大宽度部分.
有人知道黄色框会如何收缩到文本的宽度?
所以我想写一个函数,它有一个泛型,它扩展了某个对象,从而限制了它。接下来,我想将此泛型与参数定义一起使用以生成新的“增强型”参数。这一切都很好,但是一旦我想为参数引入默认值,TypeScript 就会抱怨以下消息(在操场上有一些不同的变体):
功能:
const test1 = <T extends { foo?: string }>(options: T & { bar?: boolean } = {foo:
''}) => {
console.log(options);
}
Run Code Online (Sandbox Code Playgroud)
错误:
输入 '{ foo: 字符串; }' 不能分配给类型 'T & { bar?: boolean; }'。对象字面量可能只指定已知属性,但在类型 'T & { bar?: boolean; 中不存在 'foo'。}'。你的意思是写'foo'吗?
编译器警告我,我可能想使用 foo,我确实这样做了。是否根本不可能以这种方式使用泛型,或者这是 TypeScript 中的错误?