Javascript 是否在if.bind中禁用视图缓存?

Javascript 是否在if.bind中禁用视图缓存?,javascript,aurelia,Javascript,Aurelia,我遇到了一个奇怪的问题,if.bind中的标记。本质上,似乎正在缓存if绑定中的视图片段。我在Gist.run上用我的发现创建了一个Gist,如下所示: 对象标记似乎不会在if绑定中重新呈现。这意味着,如果插入了回退内容,则当if绑定更改时,对象内容不会被刷新 使用数字输入更改下面图像的大小。如果将数字更改为零,则图像将无效,并显示回退内容 重新添加号码。内容不会刷新。这是一个很好的例子 但是,通过if.bind切换内容不会重置对象本身(尽管应该重新绑定数据)。视图是否缓存 我不完全确定是什么

我遇到了一个奇怪的问题,
if.bind
中的
标记。本质上,似乎正在缓存if绑定中的视图片段。我在Gist.run上用我的发现创建了一个Gist,如下所示:

对象标记似乎不会在if绑定中重新呈现。这意味着,如果插入了回退内容,则当if绑定更改时,对象内容不会被刷新

  • 使用数字输入更改下面图像的大小。如果将数字更改为零,则图像将无效,并显示回退内容
  • 重新添加号码。内容不会刷新。这是一个很好的例子
  • 但是,通过if.bind切换内容不会重置对象本身(尽管应该重新绑定数据)。视图是否缓存

  • 我不完全确定是什么导致了这个问题,但我相信这可能是由于Aurelia的缓存。我相信Aurelia并不是每次if绑定重新出现时都重建视图(尽管它正在重新运行绑定)。这意味着
    无效,并显示回退内容。如果是这种情况,是否有办法禁用
    If
    绑定的缓存-可能是通过绑定行为?

    我怀疑问题实际上可能在您使用的aurelia捆绑包中,而不是在aurelia core中。你的gist.run显然很好地说明了这个问题。我怀疑这一点的唯一原因是,我只是尝试使用aurelia cli复制错误,并将-bootstrapper和-tools更新到最新版本。只是直接从gist.run复制了你的app.html和app.js。在aurelia中,cli无法重现gist.run中观察到的相同错误。不过还有其他区别:)例如,印版夹文本没有出现,而是在滚动分区中看到placehold.it页面。非常奇怪。无论如何,我希望这个答案能帮助你找到答案!以下是我测试的模块版本

    $ npm list | grep aurelia
    ├─┬ aurelia-animator-css@1.0.1
    │ ├── aurelia-metadata@1.0.2
    │ ├── aurelia-pal@1.1.1
    │ └─┬ aurelia-templating@1.1.4
    │   ├── aurelia-binding@1.1.0
    │   ├── aurelia-loader@1.0.0
    │   ├── aurelia-path@1.1.1
    │   └── aurelia-task-queue@1.1.0
    ├─┬ aurelia-bootstrapper@2.0.0
    │ ├── aurelia-event-aggregator@1.0.1
    │ ├── aurelia-framework@1.0.8
    │ ├── aurelia-history@1.0.0
    │ ├── aurelia-history-browser@1.0.0
    │ ├── aurelia-loader-default@1.0.0
    │ ├── aurelia-logging-console@1.0.0
    │ ├── aurelia-pal-browser@1.1.0
    │ ├── aurelia-polyfills@1.1.1
    │ ├─┬ aurelia-router@1.1.0
    │ │ └── aurelia-route-recognizer@1.1.0
    │ ├── aurelia-templating-binding@1.1.0
    │ ├── aurelia-templating-resources@1.2.0
    │ └── aurelia-templating-router@1.0.1
    ├─┬ aurelia-cli@0.23.0
    │ ├── aurelia-dependency-injection@1.2.0
    ├─┬ aurelia-testing@1.0.0-beta.2.0.1
    │ └── aurelia-logging@1.2.0
    ├─┬ aurelia-tools@1.0.0
    

    好电话。我更新了我的DEP,但我仍然看到同样的事情。奇怪的是,你看到的是网站本身而不是后备内容,我认为这不应该发生。尝试输入明显无效的图像URL,您应该会看到我看到的行为。是的,如果我将数据属性编辑为始终为无效URL,那么我将始终看到占位符文本,但不会看到任何其他内容。在aurelia cli上下文中,仍然无法在OS X上使用Chrome55重新编程。但我也没有看到Step#2 bug,即您提到的已知问题。从某种意义上说,你的bug依赖于那个bug。这是一个奇怪的,你是对的!我也证实了你在当地的行为。我认为这可能与从本地主机运行有关,而不是从服务器运行。不管怎样,主要问题是,如果由于任何原因(无效URL、坏负载等)显示回退内容后,通过
    if
    绑定删除和重新绑定似乎并没有实际在DOM中重新创建该元素。如果使用“0”作为大小值,您应该以placehold的形式接收回退内容。它返回301移动永久响应。本地运行时,对象标记内的主页加载是另一个问题。啊哈,好的,已确认,现在可以重现该问题。哦,好吧!如果这里没有任何进展,也许也值得继续问下去。