isProxy
这个是目前位置最简单的实现了,检查一个对象是不是Proxy
测试用例
// 如果对象是一个reactive或者readonly那么它就是一个Proxy
// 在原来的基础上加一段代码describe('reactive', () => {
describe('reactive', () => {
it('happy path', () => {
const original = { foo: 1 }
const observed = reactive(original)
expect(observed).not.toBe(original)
expect(observed.foo).toBe(1)
expect(isReactive(observed)).toBe(true)
expect(isReactive(original)).toBe(false)
// observed 是一个代理对象
expect(isProxy(observed)).toBe(true)
})
})
描述
如果一个对象是readonly或reactive,那么它就是Proxy
实现
export function isProxy(raw) {
return isReactive(raw) || isReadOnly(raw)
}