Если вы используете Immutable.js , вы можете посмотреть в разделе Вложенные структуры некоторые функции, которые могут вам помочь, я лично использую mergeDeep
:
prevState.mergeDeep({ userInfo: {
username: action.payload.username,
} }),
Я также ссылаюсь на js так же, как на CMerat:
<script type="text/javascript" src="<% =Url.Content("~/Scripts/jquery-1.3.2.min.js") %>"></script>
Если вам нужен Intellisense для jquery, вы можете найти инструкции по настройке здесь . Насколько мне известно, вы не можете получить Intellisense ни для одного пользовательского файла js, на который вы ссылаетесь - сначала вам нужно будет создать для него файл Intellisense.
Я сам сейчас использую для этого htmlhelpers mvccontrib.
Это тоже может быть полезно.
Я создал свои собственные расширения HtmlHelper, которые выглядят так:
public static string MEScriptBlock(this HtmlHelper html, string path, string releasePath)
{
#if DEBUG
#else
if (!string.IsNullOrEmpty(releasePath))
path = releasePath;
#endif
return string.Format("<script type=\"text/javascript\" src=\"{0}\"></script>\r\n",
path);
}
Если intellisense - это то, что вам нужно, вы можете обмануть VS, заставив думать, что файл JS загружен ... Например,
<% if (false)
{ %>
<script src="../../Scripts/Myscript.js" type="text/javascript"></script>
<% } %>
HTH, Чарльз