angularjs - 使用 Restangular 将 Angular 输入字段映射到带有数组的 Go 结构

标签 angularjs go restangular

我有一个 Go 结构体:

type Foo struct {
    Name   string   `json:"fooName"`
    Things []string `json:"things"`
}

我有一个 Angular html 页面:

<input type="text" name="fooName" ng-model="foo.fooName"/>

<div ng-repeat="thing in things">
    <input ng-model="foo.things" type="text" name="thing-{{$index}}"/>
</div>

在我的 Angular Controller 中:

$scope.save= function(){
    Restangular
        .all('foos/new')
        .post($scope.foo).then(function(foo) {
            $location.path('/admin/fooManagement');
        });
};

其余服务调用调用:

func CreateFoo(w http.ResponseWriter, r *http.Request) {
    defer r.Body.Close()
    var f Foo
    dec := json.NewDecoder(r.Body)
    dec.Decode(&f)
    log.Println("**** CreateFoo.... ")
    log.Println(&d)
}

Foo 的名字出现了,但我无法得到用输入值填充的“Things”数组。 我正在尝试弄清楚如何获取邮政服务调用来填充数组。

最佳答案

我对 AngularJS 没有经验,但我对 Javascript 和 Go 非常了解:

<div ng-repeat="thing in things">
    <input type="text" ng-value="foo.things[$index]" name="thing[{{$index}}]"/>
</div>

假设 foo.thingsthings 不是同一个数组,并且都在范围内。

使用 ng-value 指令,我们将此输入的值绑定(bind)到索引 $index 处的 foo.things 元素。

name 属性遵循 Restangular 的(未记录的)数组表示法。

关于angularjs - 使用 Restangular 将 Angular 输入字段映射到带有数组的 Go 结构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25332944/

相关文章:

javascript - Angular 静态 JSON 列表不会呈现

javascript - Webpack 捆绑导致未知提供者 $injector/unpr 错误

angularjs - 如何添加 "No-Auth-Challenge"请求 header 以避免浏览器在restAngular中通过可怕的弹出登录窗口提示您输入凭据

php - 如何在 ng-bind 中显示选项值?

java - 注销后无法清除访问 token

go - 有没有办法确定当前步骤是否是目录?

regex - 有什么方法可以在正则表达式中转义 Go 字符串?

javascript - Angular 2 : uiRouter get current state params in root component

javascript - Angular 指令 - 两次包含相同内容

go - 为什么没有填充此 HTTP 请求的响应字段?