本文整理汇总了TypeScript中@glimmer/runtime.PrimitiveReference类的典型用法代码示例。如果您正苦于以下问题:TypeScript PrimitiveReference类的具体用法?TypeScript PrimitiveReference怎么用?TypeScript PrimitiveReference使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了PrimitiveReference类的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的TypeScript代码示例。
示例1: create
static create(value: any) {
if (typeof value === 'object' && value !== null) {
return new UnboundReference(value);
} else {
return PrimitiveReference.create(value);
}
}
示例2: RootReference
export function valueToRef<T = Opaque>(value: T, bound = true): VersionedPathReference<T> {
if (isObject(value)) {
// root of interop with ember objects
return bound ? new RootReference(value) : new UnboundReference(value);
} else if (isFunction(value)) {
// ember doesn't do observing with functions
return new UnboundReference(value);
} else if (isPrimitive(value)) {
return PrimitiveReference.create(value);
} else if (DEBUG) {
let type = typeof value;
let output: Option<string>;
try {
output = String(value);
} catch (e) {
output = null;
}
if (output) {
throw unreachable(`[BUG] Unexpected ${type} (${output})`);
} else {
throw unreachable(`[BUG] Unexpected ${type}`);
}
} else {
throw unreachable();
}
}
示例3: valueToRef
export function valueToRef(value: any | null | undefined, bound = true): VersionedPathReference<any | null | undefined> {
if (value !== null && typeof value === 'object') {
// root of interop with ember objects
return bound ? new RootReference(value) : new UnboundReference(value);
}
// ember doesn't do observing with functions
if (typeof value === 'function') {
return new UnboundReference(value);
}
return PrimitiveReference.create(value);
}
示例4: create
static create(reference: VersionedReference<Opaque>): VersionedReference<boolean> {
if (isConst(reference)) {
let value = reference.value();
if (isProxy(value)) {
return new RootPropertyReference(value, 'isTruthy') as VersionedReference<any>;
} else {
return PrimitiveReference.create(emberToBool(value));
}
}
return new ConditionalReference(reference);
}
示例5: tagName
function tagName(vm: VM) {
let dynamicScope: DynamicScope = vm.dynamicScope() as DynamicScope;
// tslint:disable-next-line:no-shadowed-variable
let { tagName } = dynamicScope.view!;
return PrimitiveReference.create(tagName === '' ? null : tagName || 'div');
}