greenPro/wxcomponents/vant/mixins/observer/index.js

20 lines
608 B
JavaScript
Raw Permalink Normal View History

2024-06-02 14:51:29 +00:00
import { behavior } from './behavior';
export function observe(vantOptions, options) {
const { watch } = vantOptions;
options.behaviors.push(behavior);
if (watch) {
const props = options.properties || {};
Object.keys(watch).forEach(key => {
if (key in props) {
let prop = props[key];
if (prop === null || !('type' in prop)) {
prop = { type: prop };
}
prop.observer = watch[key];
props[key] = prop;
}
});
options.properties = props;
}
}