小编Val*_*nov的帖子

在Go中将CSV记录解组成struct

如何从CSV文件自动反序列化/解组编码到Go结构的问题.

例如,我有

type Test struct {
  Name string
  Surname string
  Age int
}
Run Code Online (Sandbox Code Playgroud)

CSV文件包含记录

John;Smith;42
Piter;Abel;50
Run Code Online (Sandbox Code Playgroud)

是否有一种简单的方法可以将这些记录解组为struct,除非使用"encoding/csv"包来读取记录然后执行类似的操作

record, _ := reader.Read()
test := Test{record[0],record[1],atoi(record[2])}
Run Code Online (Sandbox Code Playgroud)

csv go unmarshalling

9
推荐指数
3
解决办法
2万
查看次数

如何使用AngularJS获取路由中的本地化模板(templateUrl)

在构建国际Web应用程序时,有一个非常流行的用例:

每种文化都有本地化模板,名称约定为'en_US/name.html','ru_RU/name.html'等.

用户的区域设置只能在用户登录后(或用户可以选择区域设置)获取.

因此,我找到的最佳选择是使用DI提供本地化值(因此可以在任何地方更新 - 或者当我从后端收到用户配置的响应,或者当用户选择某些内容时).

但是只能在配置步骤中配置路由,其中​​"值"无法注入.所以你不能注入locale配置并根据该值添加templateUrl.

这是一个Plnkr示例,说明我的解决方案.

只有我看到的其他解决方案是修改私有路由数组(使用$ route.routes []),但这听起来像丑陋的黑客.

是否有其他解决方案来实现使用本地化模板的常见用例?

angularjs

6
推荐指数
1
解决办法
1303
查看次数

自动保持模糊+"撤消"按钮

我正在写指令,这将是这样的:

  1. 允许编辑某些文本(使用可编辑的内容)
  2. 在失去焦点时,它应该将其价值保存到模型中(最近观看并保存到DB)
  3. 应该有按钮"撤消",它可以恢复更改.

我的实现是:http://plnkr.co/edit/DsWEYQV4j51i4GO6KjSe?p = preview

我唯一的问题是当我按下"撤消"按钮,DIV失去焦点(因此'焦点'事件被触发)并且值保存在模型中,因此"撤消"按钮无法恢复其值.

(我点击"撤消" - >聚焦事件(自动保存) - >点击事件(???无法恢复))

我看到可能的解决方法:

  1. 在模糊时设置超时,如果按下"撤消"按钮则取消它.但它很丑陋,因为用户可以输入值并导航到应用程序的其他部分,因此定时保存不会运行任何$ watch监听器.
  2. 保存focusin上的值并在保存"撤消"按钮时恢复它.这导致另一个问题:$ watch侦听器将以更改的值运行,然后再次使用以前的值运行(因此将有2次写入DB而不是一次)

有没有人有这种行为的解决方案(自动保存模糊+ undobutton)?

angularjs angularjs-directive

6
推荐指数
1
解决办法
899
查看次数

在AngularJS中创建子范围的指令

在创建复杂表单时,我发现需要将视图的某些部分分成不同的子范围,以便能够具有单独的视觉属性.

好的例子可能是实现"点击编辑"行为:当你有一个html来查看某个内容而另一个需要编辑时.

其中一个解决方案是创建具有隔离范围的en指令.但是如果不同属性的html标记差别很大,则需要进行"双重转换"(在切换时手动编译模板).

所以更简单的是有一些小的复制粘贴,但直接显示视图正在发生什么.这大大简化了标记.

以下示例代码说明了该问题:

<span class="editable" >
  <span ng-hide="editing">
    {{user.first}} <span ng-click="editing = true"><i class="icon-pencil"></i></span>
  </span>
  <span ng-show="editing">
    <input type="text" ng-model="user.first"> 
    <span ng-click="editing = false"><i class="icon-ok"></i></span>
  </span>
</span>
<span class="editable" >
  <span ng-hide="editing">
    {{user.last}} <span ng-click="editing = true"><i class="icon-pencil"></i></span>
  </span>
  <span ng-show="editing">
    <input type="text" ng-model="user.last"> 
    <span ng-click="editing = false"><i class="icon-ok"></i></span>
  </span>
</span>
Run Code Online (Sandbox Code Playgroud)

在这种情况下,首先要记住"儿童范围".

但我没有找到只在AngularJS中创建新范围的指令.有一个吗?

angularjs angularjs-directive

6
推荐指数
1
解决办法
1302
查看次数

Dart中的服务器端OAuth2

关于如何在Dart客户端(在浏览器中)使用OAuth2的例子很多,但是我找不到关于如何在服务器端实现身份验证的任何例子。

例如,对于Node.JS,有诸如PassportJS之类的框架,但我找不到Dart的类似框架。

作为用例可能不是SPA项目,我需要提供登录到Google / Facebook / Twitter / etc

有人可以使用原始文件dart:io HttpServer或任何服务器端框架(例如StartBloodless)来提供任何代码段吗?

oauth-2.0 dart google-oauth

5
推荐指数
1
解决办法
1066
查看次数