Я новичок в VUE и пытаюсь опубликовать сложный объект со списком токенов на маршруте MVC c #.
На вкладке сети из моего почтового запроса показано:
tokens[0][field]: 129
tokens[0][id]: 1
tokens[0][name]: MyPriority
tokens[0][operator]:
tokens[1][field]:
tokens[1][id]: 3
tokens[1][name]: -
tokens[1][operator]: -
Контроллер MVC показывает объект и показывает количество пройденных токенов. Однако каркас не привязан к передаваемым свойствам (поле, идентификатор, имя, оператор). Я не уверен, что мне нужно изменить часть MVC для привязки или изменить объект JS перед публикацией.
контроллер MVC
public ActionResult CreateRule(Rule rule, List<Token> tokens)
Код Js:
methods: {
saveRule() {
let tokens = [];
debugger;
for (let i = 0; i < this.tokens.length; i++) {
var t = {};
t.field = this.tokens[i].field;
t.id = this.tokens[i].id;
t.name = this.tokens[i].name;
t.operator = this.tokens[i].operator;
tokens.push(t);
}
let newRule = {
id: this.rule.id,
type: this.rule.type,
name: this.rule.name,
field: this.rule.field,
tokens: tokens
};
this.$emit("save-rule", newRule);
},
Не похоже на отличный способ скопировать все параметры в новый объект, поэтому я предполагаю, что это не лучший способ. В руководствах Vue было сделано клонирование данных для отправки на сервер. В любом случае, это не имело никакого значения для MVC, читающего почтовые данные.
Я видел, как люди пробовали Stringify, но проблемы с типами данных {... rule}, казалось, не имели значения. Я надеялся, что это был быстрый ответ, поскольку это должно быть возможно, это далеко не специализированное или уникальное действие!