Go中的SASS渲染

问题描述 投票:1回答:1

我开始使用Go进行Web开发,但我遇到资产管理问题。我更喜欢使用像Rails'Asset Pipeline这样的工具来管理(和压缩)css / js文件(以及SASS),但我仍然可以使用css和js文件。

虽然我能够使用css和js,但我无法使用SASS。有没有办法在Golang项目中使用SASS?我没有使用框架。

谢谢!

go sass
1个回答
1
投票

我不熟悉Ruby on Rails,但我认为,ruby on rails为您提供了一些工具来管理源到分发客户端资产转换(polyfill,转换,缩小,编译SASS / SCSS到CSS,将XScript编译为JavaScript ...等)。

虽然一个Web开发框架可能会这样做,以便在开发人员中快速尝试和轻松(我认为rails会这样做,而不是ruby),这与Go的做法并不完全相同。

Go是一种语言,不是框架+语言,只是一个编译器,一些构建工具和一组标准,用于编写,测试,记录和缩进内容(缩进,测试和文档部分是可选的)。

go服务器,至少我用go构建服务器的方式,与客户端有点脱钩。它在需要时服务于静态资产(例如,它提供缩小的JavaScript和样式表和html,以及来自数据库的信息的jsons等),但它并不真正关心它们是什么,它是一个服务器。 go工具链用于构建golang应用程序(例如所述服务器),但它不是用于构建客户端Web应用程序(由js,css和html组成的那些)。

现在,您可以使用类似于go中编写的rails的框架,这有助于“收拾”css,js,html。但我不知道有没有。

您可以使用编译器进入客户端代码(即javascript)https://github.com/gopherjs/gopherjs,如果您喜欢go toolchian并希望将其用于客户端开发。但是,像go一样的性能不会给你带来和你正在使用go的一个子集。它真的只是一种编写javascript的不同方式。

但是,在您的情况下,您最可能需要的是为您的客户端提供“构建链”。这里有3种工具(在我看来)在2016年脱颖而出:

npm webpack bower

我可以写一篇关于使用这个工具的文章,但这里是摘要:

Webpack用于为你的代码创建一个“管道”,就像在javascript上调用babel,编译sass到css,缩小资产,允许js用导入语法编写......等等,真的,它是一个swis军刀在你的js开发工具库中,可能与之前使用的任何功能相匹配。

即使您没有为服务器使用节点,Npm也是节点包管理器BUT。保留用于构建应用程序(如webpack)和下载模块的依赖项跟踪非常有用。它对于运行各种脚本和部署也很有用,使用npm和weback有点过分,如果你有一个package.json(npm的配置文件)你可能会更容易设置webpack环境你的项目。

凉亭是我实际上不用于小项目的一个。但它基本上是javascript库的存储库(除其他外),因此您可以轻松地说,编写“bower install jquery”并且您已经为当前项目下载了jQuery。

同样,还有很多其他工具,这些只是我喜欢的一些工具,但是,请检查其中的一些。他们可以帮助您替换以前的管道。不要认为客户端和服务器端代码是相同的,它们是分离的,并且它们之间的强烈分离可能对您有很大帮助。

© www.soinside.com 2019 - 2024. All rights reserved.