在一个页面上的多个Aurelia应用程序之间移动数据

Data moving between multiple Aurelia apps on one page

本文关键字:Aurelia 应用程序 之间 移动 数据 一个      更新时间:2023-09-26

基于一个页面上有多个Aurelia应用程序的问题,Aurelia中是否有一种方法可以使同一页面上的两个应用程序异步工作,这类似于视图中两个不同视图模型的Aurelia .two-way方法。

例如:

在应用程序A中,我使用.post方法和aurelia-http-client来传递this.data = {"data": this.item};,其中item绑定到文本输入。作为回报,我从API获得containerId。现在在应用程序B中,我想使用相同的containerId.get方法来获得应用程序A中发布的data

稍后,我想使用.put方法异步使用应用程序A和应用程序B,这意味着每当我使用应用程序B更新数据时,它都会在应用程序B中自动更新。

您可以创建一个;共享状态";模块,并根据需要导入它们。

这是一个正在工作的plunker

这是代码:

共享状态.js

export var sharedState = {
  foo: 'foo',
  bar: 'bar',
  baz: 'baz'
};

app1.js

import {sharedState} from './shared-state';
export class App {
  name = 'App 1';
  state = sharedState;
}

app2.js

import {sharedState} from './shared-state';
export class App {
  name = 'App 2';
  state = sharedState;
}