javascript - 将两个元素链接在一起,因此更改一个元素的内容会自动更改另一个 Javascript/Angular 的内容
问题描述
是否可以将两个元素链接在一起,以便使用 jquery 或 angular 更改一个元素的内容会自动更改另一个元素的内容?
我有一个应用程序,我希望在整个应用程序中出现几次的元素标题相同。因此,例如,当我单击一个名为“打开窗口 1”的按钮时,它会打开窗口 1,当我单击另一个也称为“打开窗口 1”的按钮时,它也会打开窗口 1。我想要实现的是如果我改变1个按钮的标题,试图让它实时改变另一个按钮的标题。请记住,我在应用程序上有大约 20 个不同的按钮,每个按钮都有一个应该链接在一起的双胞胎。
基本上,我只想将两个按钮链接在一起,这样它们就像彼此的镜像。这是 Angular JS 的一些特性/功能吗?
解决方案
我最后一次使用 Angular 是在不久前,主要是使用 Angularjs 而不是 Angular,所以这只是一个简短的要点,让您了解我的意思,您必须根据自己的需要进行调整
您可以在某处执行类似创建全局模块的操作,例如:
buttons.ts
:
interface ButtonInfo {
title: string,
onClick: Function
}
const button1: ButtonInfo = {
title: 'Open Window 1',
onClick: openWindow1()
};
const updateButton1 = update => {
if (update.title) button1.title = update.title;
if (update.onClick) button1.onClick = update.onClick;
};
const button2: ButtonInfo = {
title: 'Open Window 2',
onClick: openWindow2()
};
const updateButton2 = update => {
if (update.title) button2.title = update.title;
if (update.onClick) button2.onClick = update.onClick;
};
export {
button1,
updateButton1,
button2,
updateButton2,
ButtonInfo
};
然后你可以在你的按钮对所在的任何地方导入它:
button1.component.ts
:
import { button1, updateButton1 } from './buttons';
import type { ButtonInfo } from './buttons';
export class Button1Component {
button1: ButtonInfo = button1;
...
updateButton(update) {
updateButton1(update);
}
}
button1.component.html
:
<div>
...
<button (click)="button1.onClick()">
{{button1.title}}
</button>
</div>
推荐阅读
- javascript - 赛普拉斯请求:正文中的空数组
- mysql - 在 mysql 版本 5.7.2 中更改 mysql(phpmyadmin) 的 INT 默认值
- swift - 如何使用 GPUImage 框架卡通化图像?
- java - 为什么每个实体都应该有单独的 MyBatis 映射器?
- android - 适配器的 onBindView 给出错误:java.lang.IndexOutOfBoundsException: Index: 0, Size: 0
- swift - 无法将图像保存在正确的目录中
- angular - 如何在角度和打字稿中等待 API 调用完成
- django - wkhtmltopdf (pdfkit) 无法连接到任何 X 显示器
- azure - 如何在 YARN BUILD 之后在 VSTS 中获取 outbuild 构建目录
- r - R writing time intervals using lubridate package in an Excel file using XLConnect