本文整理汇总了TypeScript中Immutable.Record类的典型用法代码示例。如果您正苦于以下问题:TypeScript Record类的具体用法?TypeScript Record怎么用?TypeScript Record使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了Record类的8个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的TypeScript代码示例。
示例1: TypeError
export const fromJS = (
notebook: v4.Notebook | v3.Notebook | ImmutableNotebook
) => {
if (Record.isRecord(notebook)) {
if (notebook.has("cellOrder") && notebook.has("cellMap")) {
return notebook;
}
throw new TypeError(
`commutable was passed an Immutable.Record structure that is not a notebook`
);
}
if (notebook.nbformat === 4 && notebook.nbformat_minor >= 0) {
var v4Notebook = notebook as v4.Notebook;
if (
Array.isArray(v4Notebook.cells) &&
typeof notebook.metadata === "object"
) {
return v4.fromJS(v4Notebook);
}
} else if (notebook.nbformat === 3 && notebook.nbformat_minor >= 0) {
return v3.fromJS(notebook as v3.Notebook);
}
if (notebook.nbformat) {
throw new TypeError(
`nbformat v${notebook.nbformat}.${notebook.nbformat_minor} not recognized`
);
}
throw new TypeError("This notebook format is not supported");
};
示例2: fromJS
export function fromJS(notebook: Notebook | ImmutableNotebook) {
if (Record.isRecord(notebook)) {
if (notebook.has("cellOrder") && notebook.has("cellMap")) {
return notebook;
}
throw new TypeError(
"commutable was passed an Immutable.Record structure that is not a notebook"
);
}
if (v4.isNotebookV4(notebook)) {
if (
Array.isArray(notebook.cells) &&
typeof notebook.metadata === "object"
) {
return v4.fromJS(notebook);
}
} else if (v3.isNotebookV3(notebook)) {
return v3.fromJS(notebook);
}
if (notebook.nbformat) {
throw new TypeError(
`nbformat v${notebook.nbformat}.${notebook.nbformat_minor} not recognized`
);
}
throw new TypeError("This notebook format is not supported");
}
示例3: nextTrackId
function nextTrackId(timeline: Record<Timeline>): number {
let maxId = -1
const tracks = timeline.get('tracks', [])
tracks.forEach(track => {
const curId = track.get('id', -1) as number
if(curId > maxId) {
maxId = curId
}
})
return maxId+1
}
示例4: flattenAnnotations
function flattenAnnotations(timeline: Record<Timeline>|null) {
if(timeline !== null) {
return timeline.get('tracks', null).flatMap((track, trackIndex) => {
const color = track.get('color', null)
return track.get('annotationStacks', null).flatMap((annotations, annotationStackIndex) => {
return annotations.map((annotation, annotationIndex) => {
return new AnnotationColorMapRecordFactory({
track, trackIndex, color, annotation, annotationIndex, annotationStackIndex
})
})
})
})
} else {
return List([])
}
}
示例5: nextAnnotationId
function nextAnnotationId(timeline: Record<Timeline>): number {
let maxId = -1
const tracks = timeline.get('tracks', [])
tracks.forEach(track => {
const annotationStacks = track.get('annotationStacks', null)
annotationStacks.forEach(annotations => {
annotations.forEach(annotation => {
const curId = annotation.get('id', -1) as number
if(curId > maxId) {
maxId = curId
}
})
})
})
return maxId+1
}
示例6:
const forecastsSuccess = (state: Record<Weather>, action: Action): Record<Weather> => (
state.set('forecasts', action.payload.response)
);
示例7: it
it('should handle stations request', () => {
const action: Action = {
type: ActionTypes.STATIONS_REQUEST
};
expect(WeatherReducer(undefined, action).toObject()).to.deep.equal(state.toObject());
expect(WeatherReducer(state, action).toObject()).to.deep.equal(state.toObject());
});
示例8: night
get night(): number {
return this.forecast.getIn(['temp', 'night']);
}