Вы можете поместить эту строку в свой файл .profile
:
export NODE_PATH = "$ (префикс префикса npm config) / lib / node_modules"
blockquote>Это сделает
node
использование глобального пути.
После длительного редактирования и перечитывания вашего сообщения я думаю, что понимаю, о чем вы спрашиваете. Причина, по которой ваш X_IndexViewModel
связывается с CheckBox
, который вы создали, заключается в том, что CheckBox
назван точно так же, как и свойство модели. Они оба названы CheckBox1
.
Именно здесь происходит волшебство ASP.NET MVC. Он сопоставляет свойства модели со значениями, где имена совпадают, и можно загрузить значения.
Поэтому, когда элементы управления размещаются, происходит обратное. Не имеет значения, что для получения данных используется другой класс, поскольку он сопоставляет имена свойств и ожидаемые типы. Поскольку данные отправляются в контроллер, который имеет модель со свойством с тем же именем, что и у элемента CheckBox
в HTML, то он автоматически подставляет значение. Все это происходит за кулисами фреймворка MVC, и мне нравится называть это MVC MAGIC SAUCE.
Если вы хотите проверить это, возьмите свой пример и измените имя свойства XModel
bool
на CheckBox2
. Значения не будут автоматически подбрасываться в принимающую модель, поскольку имя свойства больше не совпадает с именем (ID) элемента управления HTML.
То же самое можно сделать и с исходной моделью, которую вы передаете для создания представления (X_IndexViewModel
). Измените ее на CheckBox2
, и HTML больше не будет автоматически отражать значение в модели, поскольку свойство модели CheckBox2
не совпадает с именем контоля CheckBox1
.
Вот некоторые другие ссылки, которые вы можете прочитать, где есть больше примеров и объяснений: