小编Mar*_*ark的帖子

当用户选择"打印"时,如何在横向打印HTML页面?

我们生成的网页应始终以横向模式打印.Web浏览器打印对话框默认为纵向,因此对于每个打印作业,用户都必须手动选择横向.它很小,但如果我们可以删除这个不必要的步骤,对用户会很好.

提前感谢所有受访者.

html printing landscape portrait

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

在nil struct指针上调用方法不会引起恐慌。为什么不?

type MyError struct {
    errors []string
}

func (t *MyError) Error() string {
    if t == nil {
        fmt.Println("t ptr empty")
        return ""
    }
    pointers := make([]string, 0, len(t.errors))
    for i, r := range t.errors {
        pointers[i] = r
    }
    sort.Strings(pointers)
    return fmt.Sprintf("n error(s) decoding:\n\n%s", len(t.errors), strings.Join(pointers, ","))
}

func main() {
    var err *MyError
    err.Error()  // expected "panic: runtime error: invalid memory address or nil pointer dereference" here
}
Run Code Online (Sandbox Code Playgroud)

变量err为nil,因此调用err.Error()方法可能会引起严重的“运行时错误:无效的内存地址或nil指针取消引用”,但是该方法调用成功。为什么不慌呢?

struct go

0
推荐指数
2
解决办法
2097
查看次数

标签 统计

go ×1

html ×1

landscape ×1

portrait ×1

printing ×1

struct ×1