export const useHtmlToVue = <P>(
propsDefinition: P = {},
targetComponent: string|ReturnType<typeof defineComponent> = 'div',
setTargetComponentProps: (PropsFromDefinition<P>) = () => {},
) => defineComponent({
props: propsDefinition,
setup(props, { slots }) {
const isReady = ref(false);
const slotContainer = ref<HTMLDivElement|null>(null);
const targetComponentProps = shallowRef<VNodeProps & Record<string, any>>({});
const slotNodes = computed<HTMLElement[]>(() => [...(slotContainer.value?.children ?? [])]
.filter((item): item is HTMLElement => item instanceof HTMLElement));
const propsSetter = (targetProps: Record<string, unknown>) => {
targetComponentProps.value = targetProps;
};
onMounted(() => {
setTargetComponentProps(
props,
slotNodes.value,
propsSetter,
);
isReady.value = true;
});
return () => {
if (isReady.value) {
return h(targetComponent, targetComponentProps.value);
}
return withDirectives(
h('div', { ref: slotContainer }, h(() => renderSlot(slots, 'default'))),
[[vShow, false]],
);
};
},
});
"в чем проблема?" а зачем мне этот вопрос задавать и почему?
Вы разве используете docker-compose для продакшн?
а в чем проблема docker-compose?
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: wlp3s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
link/ether c4:b3:01:c2:82:4b brd ff:ff:ff:ff:ff:ff
inet 192.168.1.138/24 brd 192.168.1.255 scope global dynamic noprefixroute wlp3s0
valid_lft 61255sec preferred_lft 61255sec
inet6 fe80::6a1d:93a9:7747:42e0/64 scope link noprefixroute
valid_lft forever preferred_lft forever