go app中的模板文件读取自身而不是js和css文件

时间:2015-10-27 14:07:40

标签: go

我刚刚开始学习go,而且我正在使用Google应用引擎浏览网络应用。我已经完成了留言簿教程,现在已经开始了自己的项目。 go部分编译得很好,但是当模板尝试渲染时会发生奇怪的事情。它能够呈现所有HTML,但我已经添加了CSS和JS,并且模板以某种方式自行读取而不是相应的CSS和JS文件。这很奇怪。我不确定它是一个路径问题(我希望有404)。

这是我在控制台中遇到的错误:

Uncaught SyntaxError: Unexpected token <

当我查看它为js文件选择的资源时,它与模板完全相同。我已将js和css放在相对于模板文件夹的位置,所以我希望它会找到它:

app/
- templates/
- css/
- js/

所以我的脚本在模板中被调用:

<script src="../js/main.js"></script>

我应该如何构建我的JS和CSS资源(以及后来的图像和SASS / LESS)?

修改

这就是我在Chrome devtools的源代码中看到的内容:

screenshot of devtools

1 个答案:

答案 0 :(得分:0)

(╯°□°)╯(┻━┻啊,这是app.yaml文件。我有:

application: bedlington
version: 1
runtime: go
api_version: go1

handlers:
- url: /.*
  script: _go_app

- url: /css
  static_dir: css

- url: /js
  static_dir: js

但是第一个url处理程序捕获了所有的东西。所以相反,这解决了问题:

application: bedlington
version: 1
runtime: go
api_version: go1

handlers:
- url: /
  script: _go_app

- url: /css
  static_dir: css

- url: /js
  static_dir: js

现在我不知道如何捕获所有网址(或如何正确排除资源文件夹),但它解决了最初的问题。