无法从 @typeform/embed 获取 createSlider 以在 React 中工作

Cant get createSlider from @typeform/embed to work in React

我正在尝试让@typeform/embed 在 React 中工作。在决定哪一个最适合我想使用它的情况之前,我想看看它们。

导入所有类型,css导入:

import { createPopover, createPopup, createSidetab, createSlider, createWidget } from '@typeform/embed'
import '@typeform/embed/build/css/widget.css';
import '@typeform/embed/build/css/popup.css';
import '@typeform/embed/build/css/popover.css';
import '@typeform/embed/build/css/sidetab.css';
import '@typeform/embed/build/css/slider.css';

在我的代码中,我有一个下拉菜单 select 我想使用的表单。该值将使用 useState 设置。 createWidget、createSidetab 和 createPopover 都可以正常工作

createWidget(formSelect, {container: document.querySelector('.formDiv') })
createSidetab(formSelect);
createPopover(formSelect);

但是 createPopup 和 createSlider 没有出现。有谁知道怎么让他们出现?

createPopup(formSelect, {width: 500, height: 250})
createSlider(formSelect, {container: document.querySelector('.slideDiv')});

也许我使用了错误的选项,我不知道,不能让那些工作,而其他 3 个工作得很好!

**更新:使用 'open: "load"' 选项让 createPopup 开始工作

希望有人能帮帮我,先谢谢了!

当您调用 createPopup 时,它会创建弹出窗口实例,但打开它取决于您。

您可以根据用户操作打开它,例如。按钮点击:

const open = (e) => {
  e.preventDefault();
  createPopup(formSelect, { width: 500, height: 250 }).open();
};

return <button onClick={open}>click to open popup</button>;

或者您可以像 custom launch options 一样自动打开它:{ open: "load" }.

您也应该能够将这两种方法用于 createSlider

我刚刚发现自定义启动选项(例如 { open: "load" })对于弹出窗口以外的嵌入类型已损坏。我们正在发布 a fix for the embed library 来解决这个问题。请安装最新版本的 @typeform/embed 库 (>= 1.1.4)。