【问题标题】:Hard refresh needed to display data in Umbraco.DateTime control在 Umbraco.DateTime 控件中显示数据需要硬刷新
【发布时间】:2017-09-12 13:08:50
【问题描述】:

我在 Umbraco 中有一个自定义部分,当您单击我的自定义树中的一个节点时,URL 正确显示并且数据加载成功。

当您随后单击树中的另一个节点时(兄弟,完全相同的控制器和视图)

所有数据加载......除了应该在日历控件中显示的数据。如果我重新加载页面,数据就会加载。

为了测试,我创建并添加了一个额外的控件,但这次它只是一个 Umbraco.Textbox,并且数据总是正确加载

那么关于 Umbraco.DateTime 我在同一页面上的所有其他控件加载下拉菜单、复选框等是什么

我可以在我的 Angular(v1.6) 控制器中做些什么来强制它们每次都更新吗?

更新:我认为代码如下所示。

                            <umb-property property="vm.endDateTimeTxt">
                            <umb-editor model="vm.endDateTimeTxt"></umb-editor>
                        </umb-property>

                        <umb-property property="vm.startDateTimePropertyEditor">
                            <umb-editor model="vm.startDateTimePropertyEditor"></umb-editor>
                        </umb-property>

                        <umb-property property="vm.endDateTimePropertyEditor">
                            <umb-editor model="vm.endDateTimePropertyEditor"></umb-editor>
                        </umb-property>

对于 Umbraco.DatePicker 控件,这是生成属性编辑器的方法

function buildUmbracoClockPropertyEditor(alias, editor, view, label, description, config, mandatory = true) {
            return {
                editor: "Umbraco.DateTime",
                label: label,
                description: description,
                hideLabel: false,
                view: view,
                alias: alias,
                value: null,
                validation: {
                    mandatory: mandatory,
                    pattern: ""
                },
                config: {
                    pickDate: true,
                    pickTime: false,
                    useSeconds: false,
                    format: "YYYY-MM-DD HH:MM:SS",
                    icons: {
                        time: "icon-time",
                        date: "icon-calendar",
                        up: "icon-chevron-up",
                        down: "icon-chevron-down"
                    }
                },
            }

当字符串加载到文本框中时,我还更新了字符串的格式,所以现在这是在硬刷新之前。

这是之后

所以你可以看到数据在那里,当你第一次点击一个节点时它会被加载到文本框中,但需要我去我的浏览器地址栏并按 Enter 来获取要加载到的日期Umbraco.DateTime 控件。

这简直是疯了!数据在那里,格式都一样……还能是什么!

【问题讨论】:

  • 您能分享一下您视图中的 HTML 吗?
  • 我认为这可能与日期格式有关,也许 Umbraco.DateTime 控件无法处理您输入的内容。
  • 是的,我尝试了格式化的东西......现在我以相同的格式返回数据......仍然没有乐趣。 - 接下来我要开始自我切割了。

标签: angularjs umbraco umbraco7


【解决方案1】:

原因是 Umbraco 正在加载所有 javascript,我们需要强制它再次加载。

我尝试过回收AppPool,重启网站,触摸web.config等。重新加载并不容易。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-07-26
    • 1970-01-01
    • 2010-11-23
    • 2017-03-27
    • 1970-01-01
    相关资源
    最近更新 更多