我正在慢慢地将flowType工作到我的代码中,但我正在努力解决一个概念.
如何指定对象的未知动态命名属性的类型?
例如,我的用户对象可能包含一个包含具有唯一键的组织的对象.
我该如何定义?
export type User = ?{
currentOrg: string,
displayName?: string,
email: string,
emailVerified: boolean,
newAccount: boolean,
organisations?: {
UNKNOWNKEY?: string {
orgData1: string,
orgData2: string,
}
},
uid: string,
photoUrl?: string,
};
Run Code Online (Sandbox Code Playgroud)
真的很感激任何帮助.谢谢!
如果有人熟悉css和Material UI,我们将不胜感激.基本上我正在尝试实现一个Material UI Drawer组件,它在打开时不会滑过页面内容的顶部,而是页面内容符合抽屉,即挤压或展开.我在我的项目中使用bootstrap行和容器,但我不知道如何使用它们来实现这一点.这是我的组件的布局方式:
<div>
<AppBar
onLeftIconButtonTouchTap={this.handleToggle}
title="Imaginary Company"
/>
<Row>
<QuotesList />
</Row>
<Drawer
containerStyle={{ top: 64, width:150 }}
open={this.state.open}
>
<MenuItem>Menu Item</MenuItem>
<MenuItem>Menu Item 2</MenuItem>
</Drawer>
</div>
Run Code Online (Sandbox Code Playgroud)
请注意,"顶部"属性只是因为我希望应用栏的顶部标题区域在抽屉打开或关闭时保持可见.一如既往,任何帮助都会令人惊叹!干杯
更新:我找到了一种适合我的hacky解决方案.使用令人敬畏的'样式组件'库(允许样式根据您传入的动态道具进行更改)我能够创建一个包装器组件,它接受一个'折叠'道具,向右滑动的动画等于抽屉的宽度(150).如果有人偶然发现这个并且他们对这里感兴趣的是样式组件中的代码(那里还有一些复制和粘贴的引导容器样式):
const CollapsibleContainer = styled.div`
margin-left: auto;
margin-right: auto;
padding-left: 15px;
padding-right: 15px;
$:after {
content: "";
display: table;
clear: both;
}
position: absolute;
right: 0;
left: ${props => props.collapsed ? '150px' : '0'}!important;
transition: 450ms cubic-bezier(0.23, 1, 0.32, 1) 0ms;
`;
Run Code Online (Sandbox Code Playgroud)
也许这不是完美的解决方案,但它看起来很好.希望这有助于某人:)
这是我一直想知道的一个功能.真的很喜欢Firebase Hosting,但想知道是否有任何计划允许在Google云平台上实现流量整形?例如,将新版本推广到5%的访问者,进行50%的A/B测试等?
如果有的话会很棒,如果不是,我想这将是创建自定义服务器设置的问题.谢谢
我有数据,其中我试图遵循Firebase关于扁平结构的建议,所以我没有超出我需要的数量.最终的结果是我在这样的节点中组织了引号:
quotes -> clientName -> quoteObject
Run Code Online (Sandbox Code Playgroud)
quoteObjects有一个'dateCreated'值,我希望能够像这样提取这些数据(因为当我拉出一个特定页面的所有引号的大列表时,我然后使用对象赋值来制作一个大数组要显示的对象):
const quotesRef = firebase.database().ref('quotes');
quotesRef.orderByChild('dateCreated').on('value', snapshot => {
// function
});
Run Code Online (Sandbox Code Playgroud)
不幸的是,dateCreated值超过一个级别,因此标准查询不起作用.我知道如果您知道父路径,则可以执行深层路径查询,但在我的情况下,clientName父项始终是唯一的.鉴于此,是否可以指定一种通配符路径?如果是这样,我该怎么办呢?干杯!
编辑:显示数据库示例,抱歉最初应该更具体.
quotes
- ClientEmailOne
-UniqueQuoteID
- createdBy: ClientEmailOne
- dateCreated: 1479255005172
- email: "clientsEmail@example.com"
- ClientEmailTwo
-UniqueQuoteID
- createdBy: ClientEmailTwo
- dateCreated: 1479255005172
- email: "clientsEmail@example.com"
- ClientEmailThree
-UniqueQuoteID
- createdBy: ClientEmailThree
- dateCreated: 1479255005172
- email: "clientsEmail@example.com"
-UniqueQuoteID
- createdBy: ClientEmailThree
- dateCreated: 1479255005172
- email: "clientsEmail@example.com"
-UniqueQuoteID
- createdBy: ClientEmailThree
- dateCreated: 1479255005172
- email: "clientsEmail@example.com"
Run Code Online (Sandbox Code Playgroud) 是否有一种干净的内置方式直接引用数据库触发器上方节点的数据值?我知道我可以得到一个父参考,然后我可以查询该值,但如果有一个更简洁的方式这样做,这将是非常感谢.
为清楚起见,我想在对象中使用子节点作为触发器,并在发生时直接获取父对象的值,以避免在对父对象进行其他更改时调用该函数,如下所示:
const parentObject = {
triggerValue: 'I want the function to be triggered only on writes to this path',
parentValue: 'But I also want this value',
}
Run Code Online (Sandbox Code Playgroud)
谢谢
我在这里看到了一个类似的问题,但它有点不同,因为我需要的不仅仅是频道归因更深入,因为答案是什么。
使用 iAd,您可以requestAttributionDetails像这里提到的那样,它提供了诸如活动 ID、关键字等详细信息。 Firebasein_app_purchase自动收集事件(这里),但不收集任何这些信息,至少根据链接的文档。
我的问题是,如果in_app_purchaseFirebase 自动记录该事件,我如何覆盖它(或添加额外的事件或用户属性)以提供我的分析所需的来自该 iAd 数据的活动归因、关键字等数据。这些归因详细信息对于我们确定哪些广告系列在用户转化后为我们带来回报至关重要。
类似于: 如何在react-native的packager中将我的包的依赖项的特定node_modules列入黑名单?
我试图使用需要返回正则表达式的黑名单选项从地铁包装器中排除本机反应.
我需要的是返回类似的东西:
/\/DYNAMIC_PROJECT_DIRECTORY\/node_modules\/react-native\/.*/,
Run Code Online (Sandbox Code Playgroud)
我可以在DYNAMIC_PROJECT_DIRECTORY中插入一个变量,因为它将根据另一个模块的纱线工作空间路径而改变.
我对正则表达式并不熟悉!
谢谢
编辑:我尝试在该格式的路径中进行硬编码,但仍然无法使用黑名单,所以如果有人可以指出我正确的方向,那么排除该文件夹及其中的所有内容将非常感激!
firebase ×4
javascript ×3
css ×1
flowtype ×1
iad ×1
material-ui ×1
react-native ×1
reactjs ×1
regex ×1
syntax ×1