В Angular 4,
HTML:
<ion-input type="file" formControlName="avatar"></ion-input>
<button type="button" ion-button (click)="selectFile()"></button>
Javascript:
selectFile() {
let element: HTMLElement = document.querySelector('input[type="file"]') as HTMLElement;
element.click();
}
Это работа для меня.
На мой взгляд, маршалинг означает акт взятия объекта или данных, их подготовки к использованию в неродном контексте и последующего представления в этом внешнем контексте.
Я думаю. с точки зрения данных или объекта, «вводимых» в среду, в которой они не знакомы. Это может включать различное кодирование, оболочку и т. Д., И то, как объект передается, является важной частью процесса маршалинга.
Пока данные или объект не были фактически представлены в его новом контексте, я не считаю его маршалированным. . На этом этапе он только что был преобразован, зашифрован, упакован или что-то еще.
Например, JSON часто используется для передачи объекта или данных из одного процесса в другой. Когда вы конвертируете в JSON, я просто считаю это преобразованием из одной структуры данных в другую.
Как я понял, это подготовка данных, а не передача. Тем не менее, нередко использовать этот термин и для включения передачи (я тоже виновен в этом).
Маршалинг осуществляется исключительно через границу
Обычно используется для передачи объектов между двумя доменами приложений. Передача по сети - необязательная вещь, но процесс отправки объекта по сети - это сначала сериализация объекта, отправка обычно осуществляется по другому протоколу (tcp / ip).
Я думаю, что он может представлять оба сценария.
«Маршал» имеет несколько значений, но помимо титула, это означает. . .
маршал - мобилизация: приготовься к действие или использование; «упорядочить ресурсы»
Таким образом, это должно означать просто «упаковать», а не «упаковать и отправить».