0

我对阻止 Angular 的双向绑定的深度链接有疑问。

我在 git 中做了一个测试项目。请在此处查看(这是一个简单的离子默认项目。如果您已经安装npm并且ionic-cli,只需运行npm iionic cordova platform add ios

项目说明 1. 工作案例

  • 有3页。主页、列表和模态。
  • 每个页面都有一个input,并且这个输入的变量与test变量相连。这test显示在下方input

喜欢:

<input (input)="testFn($event)" name="myTest"> 
<p>Hello {{test}}!</p>
  • 每一页,每当我输入输入时,它都会立即反映在 {{test}}.
  • 一切似乎都很好。

2.不工作的情况

  • 如果你检查app.component.ts,你会看到 deeplinks 被设置为 this.nav.push('ListPage');并且 url 是myapp://list

  • 所以在我的 xcode iphone 模拟器中,我将打开 safari 并在地址栏中输入myapp://list. 它会将您重定向到列表页面。

  • 从那时起,输入要反映的输入{{test}}在列表页面和模态页面中不起作用。但是在主页上工作。
  • testFn函数中,我把console.log. 当我测试时,console.log 总是能正确打印。所以我猜角度没有正确更新。(如果您在 xcode iPhone 模拟器中看不到键盘cmd + shift + k:)

我的环境

  • 离子框架:3.5.0
  • 离子应用脚本:1.3.12
  • 角核心:4.1.3
  • Angular 编译器 CLI:4.1.3
  • 节点:7.10.0
  • 操作系统平台:macOS Sierra
  • 导航平台:MacIntel
  • 用户代理:Mozilla/5.0(iPhone;CPU iPhone OS 9_1,如 Mac OS X)AppleWebKit/601.1.46(KHTML,如 Gecko)版本/9.0 Mobile/13B143 Safari/601.1
  • Xcode:8.3.3 (8E3004b)
  • 模拟器:iPhone 5 iOS 10.3 (14E8301)

我也尝试过ionic cordova platform rm iosionic cordova platform add ios但没有运气。

谁能告诉我我的代码有什么问题?

非常感谢。

编辑:我可以使用ChangeDetectorRef'sdetectChanges来强制更新视图。但我认为这不是一个好的解决方案。

4

0 回答 0