小编dmz*_*rsk的帖子

HTML语义:将链接(锚元素)放在标题中是一个好主意吗?

以这种方式构建新闻列表是错误的:

   <h1><a href="article-1.html">That happened!</a></h1>
   <div class="short">Just like planned</div>
Run Code Online (Sandbox Code Playgroud)

我喜欢这个吗?

   <h1>That happened!</h1>
   <div class="short">Just like planned</div>
   <div><a href="article-1.html">Read it now</a></div>
Run Code Online (Sandbox Code Playgroud)

或删除标题元素?

   <div class="news-header"><a href="article-1.html">That happened!</a></div>
   <div class="short">Just like planned</div>
Run Code Online (Sandbox Code Playgroud)

html semantics

3
推荐指数
1
解决办法
2685
查看次数

Monads,组成和计算顺序

所有monad文章经常陈述,monad允许你按顺序排列效果.

但是简单的构图怎么样?是不是

f x = x + 1
g x = x * 2

result = f g x
Run Code Online (Sandbox Code Playgroud)

需要g x先计算f ...

单子会做同样的事情,但处理效果?

monads haskell composition

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

去编码转换问题

我在 go 中有以下代码:

import (
    "log"
    "net/http"
    "code.google.com/p/go.text/transform"
    "code.google.com/p/go.text/encoding/charmap"
Run Code Online (Sandbox Code Playgroud)

)

...

res, err := http.Get(url)
if err != nil {
    log.Println("Cannot read", url);
    log.Println(err);
    continue
}
defer res.Body.Close()
Run Code Online (Sandbox Code Playgroud)

我加载的页面包含非 UTF-8 符号。所以我尝试使用transform

utfBody := transform.NewReader(res.Body, charmap.Windows1251.NewDecoder())
Run Code Online (Sandbox Code Playgroud)

但问题是,即使在这个简单的场景中它也会返回错误:

bytes, err := ioutil.ReadAll(utfBody)
log.Println(err)
if err == nil {
    log.Println(bytes)
}
Run Code Online (Sandbox Code Playgroud)

transform: short destination buffer

它实际上也设置bytes了一些数据,但在我的真实代码中我使用goquery

doc, err := goquery.NewDocumentFromReader(utfBody)
Run Code Online (Sandbox Code Playgroud)

哪个看到错误并失败,没有数据作为回报

我试图通过的“块”res.Bodytransform.NewReader和figuried出来,只要res.Body不包含非UTF8数据效果很好。当它包含非 UTF8 字节时,它会因上述错误而失败。

我是新手,不太了解发生了什么以及如何处理

encoding go

2
推荐指数
1
解决办法
794
查看次数

使用grunt在javascript文件中"嵌入"一个全局变量

我的项目中有一个.js文件,代码如下:

var API_ENDPOINT = 'http://example.com:8000';
var api = new RemoteApi(API_ENDPOINT);
Run Code Online (Sandbox Code Playgroud)

其中API_ENDPOINT开发/ PROD环境之间的变化

它不是一个js应用程序,主要是一个经典的服务器端应用程序(Django),它有一些客户端的内容.

我开始使用Grunt来管理客户端依赖关系并认为,API_ENDPOINT在Grunt配置中指定并以某种方式将其"嵌入"到.js文件中是个好主意.

但是我找不到用Grunt破坏文件的方法.

生成的.js文件将在浏览器envorenment中运行,因此我需要API_ENDPOINT在source.js文件中嵌入我的变量或创建一个单独的.js文件,如

var API_ENDPOINT = '...';
Run Code Online (Sandbox Code Playgroud)

我将在script.js之前包含哪些内容

(另外,我想把这个变量"嵌入"我的django中settings.py)

javascript gruntjs

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

Golang:结构嵌入与“别名”

我知道结构嵌入

type newType struct {someStruct}
Run Code Online (Sandbox Code Playgroud)

我知道类型别名:

type newType = someStruct
Run Code Online (Sandbox Code Playgroud)

但是有什么实际的理由可以使用

type newType someStruct
Run Code Online (Sandbox Code Playgroud)

原始类型呢?

type newType int
Run Code Online (Sandbox Code Playgroud)

这种定义的正确名称是什么?

types go

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

带有一些PHP逻辑的Twig标签

我是使用Twig的新手,但我对django模板有很好的把握.

我的网站不是Symfony项目,但我使用Twig作为模板语言.

我需要的是在我的网站的每个页面上显示"最新新闻"块.将逻辑放入每个控制器实际上不是一种选择.

从我的django经验来看,我希望创建一个自定义标签并在我的基本模板中呈现它.Django有所谓的自定义" 包含标签 ".执行某些python逻辑并通过另一个模板呈现其结果的标记.

我在Twig中读到了自定义标签.我成功地为我的闪亮新{% latest_news 5 %}标签创建了一个解析器.但是如何在我的PHP脚本中执行LatestNews_Node?我读了一些Twig源代码.它们用于$compiler->write(...)执行PHP代码.这是在标签中执行自定义PHP的唯一方法吗?

以及如何通过另一个模板呈现它并在结尾返回结果?

我试图寻找一个没有结果的工作示例

php templates twig

0
推荐指数
1
解决办法
2818
查看次数

Go 中公共接口的意义是什么?

https://github.com/golang/go/wiki/CodeReviewComments#interfaces说:

Go 接口通常属于使用接口类型值的包,而不是实现这些值的包

那么,大多数接口不能是私有的吗?

package mypackage

type thinger interface {
  Thing() bool
}

func Smth(t thinger) bool {...}
Run Code Online (Sandbox Code Playgroud)
package otherpackage

type MyThing struct{}
func (t MyThing) Thing() bool {return true}

myVar := MyThing{}
mypackage.Smth(myVar)
Run Code Online (Sandbox Code Playgroud)

公共接口有什么意义?例如io.Reader,成为公共接口有什么好处?

go

-2
推荐指数
1
解决办法
71
查看次数

标签 统计

go ×3

composition ×1

encoding ×1

gruntjs ×1

haskell ×1

html ×1

javascript ×1

monads ×1

php ×1

semantics ×1

templates ×1

twig ×1

types ×1