问题 #2445💬 已回答提出于 2019年12月6日作者 kickbk1 个反应

新组件中的 Datetimepicker

快速解答作者 artf1

你在“handleDateInputsOptions”里做的大部分逻辑应该都在你的组件“脚本”里。 你的“dateInputsSelect”道具包含输入类型,所以[使用插值](https://grapesjs.com/docs/modules/Components-js.html#basic-scripts)在你的“脚本”中,然后应用“handleDateInputsOptions”的逻辑。 你还需要一个技巧,是在画布里触发“脚本”更新,所以在你的“model.init”里做这个。 “''js init() { this.on('change:dateInputsSelect', () => this.trigger('chang...

阅读下方完整回答 ↓

问题

抱歉这个问题比较长!这是一个全新的部分,我快写完了,只是需要一点帮助,我相信这对其他人可能有用。 我正在创建一个使用 daterangepicker 库的日期选择输入。 “gatherDateOptions()”通过选项收集所有日期类型字段。我有“date”、“datetime”、“daterange”和“datetimerange”字段。之后我会用他们的名字,并在“-”处拆分,获取字段类型。 我会逐个加载脚本,以避免依赖问题(比如“$ 未定义”)。如果你认为有更高效的方法,请给我建议。 一旦加载了“daterangepicker”,我可以运行“initDateRange”函数,确实会在字段上运行“daterangepicker”,并在正确位置(输入字段下方)生成日期选择下拉菜单,但我稍后会解释为什么这看起来很浪费。 因为我有一个选择功能可以切换字段及其类型,我需要一个函数来监听这个变化并更新输入字段。所以在“defaults”下面,我添加了“init()”“函数,正在监听变更事件并运行”handleDateInputsOptions“。 问题一:当在“default: script:'中执行”daterangepicker“'初始化时,'''daterangepicker'选择弹窗出现在正确位置——输入字段下方。然而,当在“handleDateInputsOptions”中初始...

回答(1)

artf2019年12月10日

你在“handleDateInputsOptions”里做的大部分逻辑应该都在你的组件“脚本”里。 你的“dateInputsSelect”道具包含输入类型,所以[使用插值](https://grapesjs.com/docs/modules/Components-js.html#basic-scripts)在你的“脚本”中,然后应用“handleDateInputsOptions”的逻辑。 你还需要一个技巧,是在画布里触发“脚本”更新,所以在你的“model.init”里做这个。 “''js init() { this.on('change:dateInputsSelect', () =>...

相关问答

通过相似的问题讨论继续研究。

与此问题匹配的付费插件

根据问题关键词和标签相关性精选,助你更快交付。

查看全部插件

正在加载付费插件推荐……

免费方案

在以下平台查看开源 GrapesJS 插件: GitHub 或在我们的免费目录中快速搜索。

浏览免费插件 →
高级方案

高级插件提供支持、定期更新和生产就绪的功能——为你节省数天的集成工作。

浏览高级插件 →

浏览插件分类

直接跳转到市场上的插件分类页面。