首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何在golang revel框架下运行angular build

在GoRevel框架下运行Angular构建的应用程序,你需要将Angular构建的输出(通常是dist文件夹中的内容)集成到Revel项目中。以下是详细的步骤:

1. 构建Angular应用程序

首先,确保你已经安装了Angular CLI,并且你的Angular项目已经设置好。

代码语言:javascript
复制
# 进入Angular项目目录
cd path/to/your/angular-project

# 构建Angular应用程序
ng build --prod

构建完成后,你会在dist文件夹中得到构建好的静态文件。

2. 将Angular构建输出集成到Revel项目中

接下来,你需要将Angular的构建输出集成到Revel项目中。

方法一:使用静态文件服务

  1. 创建一个静态文件目录: 在你的Revel项目根目录下创建一个目录来存放Angular的静态文件。 mkdir -p path/to/your/revel-project/public/angular
  2. 复制构建文件: 将Angular构建生成的dist文件夹中的内容复制到刚刚创建的目录中。 cp -r path/to/your/angular-project/dist/* path/to/your/revel-project/public/angular/
  3. 配置Revel以服务静态文件: 在Revel项目的conf/routes文件中添加一条路由来服务静态文件。 GET /angular/*filepath Static.Serve("public/angular")

方法二:使用Revel的模板引擎

如果你希望更紧密地集成Angular和Revel,可以使用Revel的模板引擎来嵌入Angular应用。

  1. 修改app/tmp/main.go: 在Revel项目的app/tmp/main.go文件中,添加代码来服务Angular应用。 package main import ( "github.com/revel/revel" "net/http" ) func init() { revel.OnAppStart(InitDB) revel.InterceptMethod((*GorpController).Begin, revel.BEFORE) revel.InterceptMethod((*GorpController).Commit, revel.AFTER) revel.InterceptMethod((*GorpController).Rollback, revel.FINALLY) // 添加静态文件服务 revel.Router("/angular/*filepath", revel.Static.Serve("public/angular")) } func main() { revel.RunApp() }
  2. 修改conf/routes: 确保你的路由配置允许访问Angular应用。 GET / App.Index GET /angular/*filepath Static.Serve("public/angular")

3. 运行Revel应用程序

现在,你可以运行Revel应用程序,并且Angular应用应该可以通过Revel服务器访问。

代码语言:javascript
复制
revel run path/to/your/revel-project

打开浏览器并访问http://localhost:9000/angular,你应该能看到你的Angular应用程序。

注意事项

  • 确保Angular应用的构建输出路径与Revel项目的静态文件目录一致。
  • 如果你有自定义的API端点,确保它们不会与Angular的路由冲突。
页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

Go语言实践:从新手入门到上线真实的小型服务所遇到的那些坑

Go语言,又称Golang,是Google开发的一款静态强类型、编译型、并发型,并具有垃圾回收机制的编程语言,它的运行速度非常之快,同时还有如下特性:具有一流的标准库、无继承关系、支持多核;同时它还有着传说级的设计者与极其优秀的社区支持...事实上Revel附带自己的命令包,镜像一些类似run与build之类的命令。...使用Revel后,我们: 无法运行go build; 无法运行go install; 无法使用 race detector (–race); 无法使用go-fuzz或者其它需要可构建Go资源的强大工具...dir下面,违反了Go语言中将_test.go文件与测试文件打包在一起的习惯; 要想运行Revel测试,需要启动服务器并执行集成测试。...在并发访问时,Go团队的确考虑过映射的安全性问题,但最终放弃了,因为在大多数情况下这种方式会造成非必要开销,在golang.org的FAQ中有这样的解释: 在经过长期讨论后,我们决定在使用映射时,一般不需从多个

84170
  • Go语言实践:从新手入门到上线真实的小型服务所遇到的那些坑

    Go语言,又称Golang,是Google开发的一款静态强类型、编译型、并发型,并具有垃圾回收机制的编程语言,它的运行速度非常之快,同时还有如下特性:具有一流的标准库、无继承关系、支持多核;同时它还有着传说级的设计者与极其优秀的社区支持...事实上Revel附带自己的命令包,镜像一些类似run与build之类的命令。...使用Revel后,我们: 无法运行go build; 无法运行go install; 无法使用 race detector (–race); 无法使用go-fuzz或者其它需要可构建Go资源的强大工具...dir下面,违反了Go语言中将_test.go文件与测试文件打包在一起的习惯; 要想运行Revel测试,需要启动服务器并执行集成测试。...在并发访问时,Go团队的确考虑过映射的安全性问题,但最终放弃了,因为在大多数情况下这种方式会造成非必要开销,在golang.org的FAQ中有这样的解释: 在经过长期讨论后,我们决定在使用映射时,一般不需从多个

    1.1K80

    Go语言实践:从新手入门到上线真实的小型服务所遇到的那些坑

    Go语言,又称Golang,是Google开发的一款静态强类型、编译型、并发型,并具有垃圾回收机制的编程语言,它的运行速度非常之快,同时还有如下特性:具有一流的标准库、无继承关系、支持多核;同时它还有着传说级的设计者与极其优秀的社区支持...事实上Revel附带自己的命令包,镜像一些类似run与build之类的命令。...使用Revel后,我们: 无法运行go build; 无法运行go install; 无法使用 race detector (–race); 无法使用go-fuzz或者其它需要可构建Go资源的强大工具...dir下面,违反了Go语言中将_test.go文件与测试文件打包在一起的习惯; 要想运行Revel测试,需要启动服务器并执行集成测试。...在并发访问时,Go团队的确考虑过映射的安全性问题,但最终放弃了,因为在大多数情况下这种方式会造成非必要开销,在golang.org的FAQ中有这样的解释: 在经过长期讨论后,我们决定在使用映射时,一般不需从多个

    1.1K60

    Golang入门及开发环境配置

    Go语言诞生背景 计算机硬件更新频繁,主流编程语言无法发挥多核多CPU的性能 软件系统复杂度不断变高,缺乏简洁高效的编程语言 C/C++运行速度快,但编译速度慢 Go语言特点 静态类型开发语言 静态:...编译时检查变量类型,C++,Java 动态:运行时检查变量类型,JavaScript 自动垃圾回收机制 编译速度快(直接编译成机器码,不依赖其他库) 并发性能高(语言层面支持并发) 部署简单(对库的依赖少...) 函数可返回多个值 代码风格强制统一 Go语言应用场景,开源框架 应用场景: 区块链开发 服务端/游戏软件开发 分布式/云计算开发 开源框架: Beego Lris Revel win10配置Golang...开发环境 下载地址:https://golang.google.cn/ 关于环境变量配置: 我下载的版本是1.13.5,把msi文件安装好之后自动添加了环境变量: ?...Goland下载地址:https://www.jetbrains.com/ 运行HelloWorld package main import ( "fmt" ) func main() {

    60520

    Go语言实践:从新手入门到上线真实的小型服务所遇到的那些坑

    Go语言,又称Golang,是Google开发的一款静态强类型、编译型、并发型,并具有垃圾回收机制的编程语言,它的运行速度非常之快,同时还有如下特性:具有一流的标准库、无继承关系、支持多核;同时它还有着传说级的设计者与极其优秀的社区支持...事实上Revel附带自己的命令包,镜像一些类似run与build之类的命令。...使用Revel后,我们: 无法运行go build; 无法运行go install; 无法使用 race detector (–race); 无法使用go-fuzz或者其它需要可构建.../test dir下面,违反了Go语言中将_test.go文件与测试文件打包在一起的习惯; 要想运行Revel测试,需要启动服务器并执行集成测试。...在并发访问时,Go团队的确考虑过映射的安全性问题,但最终放弃了,因为在大多数情况下这种方式会造成非必要开销,在golang.org的FAQ中有这样的解释: 在经过长期讨论后,我们决定在使用映射时

    1.1K70

    Go 语言学习指南:变量、循环、函数、数据类型、Web 框架等全面解析

    学习基础知识 掌握 Go 语言的常见概念,变量、循环、条件语句、函数、数据类型等等。...Functions 了解 Go 中函数的工作原理,下面的资源列表将涵盖: 如何在 Go 中定义和调用函数? Go 中的命名返回值? 处理多个返回类型。 Go 中不同类型的函数。...在 Go 语言中,每个包都用不同的名称定义,并且该名称与其功能密切相关,“strings”包,它包含与字符串相关的方法和函数。...Go应用程序构建为单一自包含二进制文件,使得安装Go应用程序变得简单;具体来说,用Go编写的程序可以在任何系统上运行,而无需任何现有库、运行时或依赖项。...Web Frameworks Revel Revel 将端点组织到控制器中。它提供简单的数据绑定和表单验证。Revel 使得在规模上使用Go模板变得简单。可以在操作之前或之后注册功能。

    25710

    何在 Windows 上安装 AngularAngular CLI、Node.js 和构建工具指南

    何在 Windows 上安装 AngularAngular CLI、Node.js 和构建工具指南 本文翻译自How to Install Angular on Windows: A Guide to...Angular CLI, Node.js, and Build Tools,作者为Ahmed Bouchefra 在本教程中,我们将学习如何在 Windows 中安装 Angular CLI 并使用它来创建...什么是 Angular CLI? Angular CLI 是用于初始化和使用 Angular 项目的官方工具。它使您免于复杂配置和构建工具( TypeScript、Webpack 等)的麻烦。...近年来,它还被用来发布前端包和库, Angular、React、Vue.js 甚至 Bootstrap。...结论 在本教程中,我们了解了如何在 Windows 计算机上安装 Angular CLI,并使用它从头开始初始化一个新的 Angular 项目。

    47200

    为什么不学基于TypeScript的Node.js服务端开发?

    我们早就知道,如今的JavaScript已经不再是当初那个在浏览器网页中写写简单的表单验证、没事弹个alert吓吓人的龙套角色了。...因为那个时候一直在用Angular 1.x作为主要的前端框架,后面Angular发布了全新的Angular 2版本,所以我们团队就顺其自然的开始研究并实践Angular 2。...;在框架下层,通过适配器适配到其他一些符合其理念的基础HTTP框架Express、Fastify等。...假如这段代码运行起来,它可以被通过这样的URL进行访问:http://use-your-domain/products 是不是挺有意思?...不光如此,由于要学习和掌握服务端开发的话,需要涉及的内容还是非常多的,所以我准备再加入一些后端开发过程中会经常用到的东西,比如MySQL、Redis、MongoDB、RabbitMQ;如何在前后端的应用开发中使用

    3.4K30

    纯前端控件集 WijmoJS 2018V2发布,在React、Vue和Angular中更易用

    VSCode设计器:用于自定义Angular架下WijmoJS 组件 Web在线设计器,用于创建和自定义wijmoJS 控件 VSCode设计器 此设计器是VSCode的扩展。...安装后,它会在每个Angular架下的WijmoJS组件上方添加“Wijmo Designer ...”操作。单击操作按钮后,它将打开一个设计界面,用于自定义该特定组件。...开发人员可以在任何浏览器中运行此设计器。它允许将控件添加到设计图面,然后根据自己的喜好自定义它们。配置完成后,可以将生成的代码复制到自己的应用程序中。...与顶级组件互补的子组件,定义FlexGrid列的wjc-flex-grid-column组件,作为它们所代表的WijmoJS 类的包装器。...随着新版本上线,WijmoJS 添加了Web Components In Angular示例,演示了如何在Angular应用程序中使用 WijmoJS Web组件。

    7K20

    go语言最快最好运用最广的web框架比较(大多数人不了解的特性)

    https://github.com/labstack/echo https://echo.labstack.com Gin:用Go(Golang)编写的HTTP Web框架。...https://github.com/revel/revel https://revel.github.io 声望 学习曲线 框架名称 示例 示例参考 实时支持 beego 49 https://beego.me...Iris支持完整的MVC功能,可以在运行时注册。 Beego仅支持方法和模型匹配,可以在运行时注册。...Revel支持方法,路径和模型匹配,只能通过生成器(必须运行以构建Web应用程序的不同软件)注册。...文件服务器:嵌入到应用程序(File Server: Embedded Into App) 通常,您必须传输所有静态文件(资产; css,javascript文件…)以及应用程序的可执行文件。

    2.7K40

    Golang指南:顶级Golang框架、IDE和工具列表

    编译器可以在运行时前执行所有代码检查工作。 我们收罗了Golang的顶级框架、IDE和工具列表,以供大家快速参考。建议添加到浏览器书签中,以便随时查看!...1.Revel 作为Go语言的高效生产力框架,Revel包含的Hot Code Reload工具可以让你在每次更改文件时重建项目。它还包括各种全面和高性能的功能,因此你不需要找外部库集成到框架中。...运行dev命令,你就能看到变化在你的眼前发生! Buffalo不仅仅是一个框架——它也是一个整体的Web开发生态系统,可以让你直接构建应用程序。...5.Go Meta Linter 如果你需要运行Go lint工具并同时使其输出正常化,那么Go Meta Linter可以为你办到。...Go Meta Linter旨在与文本编辑器或IDE集成,Sublime Linter插件,Atom go-plus包,Emacs Flycheck检查器,Vim / Neovim,以及Go for

    19.5K40

    十分钟成为 Contributor 系列 | 助力 TiDB 表达式计算性能提升 10 倍

    Bandwidth-Optimized Storage The Design and Implementation of Modern Column-Oriented Database Systems 在这篇文章中,我们将描述: 如何在计算框架下实现某个函数的向量化计算...; 如何在测试框架下做正确性和性能测试; 如何参与进来成为 TiDB Contributor。...对于定长类型( int64),我们在计算时会将其转成 Golang Slice( []int64),然后直接读写这个 Slice。...添加好 case 后,在 expression 目录下运行测试指令: # 功能测试 GO111MODULE=on go test -check.f TestVectorizedBuiltinMathFunc...Contributor: 在此 issue 内选择感兴趣的函数并告诉大家你会完成它; 为该函数实现 vecEvalXType() 和 vectorized() 的方法; 在向量化测试框架内添加对该函数的测试; 运行

    1.2K10

    【ASP.NET Core 基础知识】--前端开发--集成前端框架

    跨平台应用程序: Angular通过Ionic等框架支持构建移动应用,同时也能够通过Electron等支持构建桌面应用。这种一次编写,多端运行的能力使得Angular在跨平台开发中具有优势。...跨平台开发: Vue.js 可以用于构建各种跨平台应用,Web应用、移动应用(使用Vue Native)、桌面应用(使用Electron)等。这种一次编写,多端运行的能力使得开发更为便捷。...ng new my-angular-app 构建 Angular 应用: 在 Angular 应用的根目录中运行以下命令来构建项目。...下面我将展示如何在 ASP.NET Core 中创建和使用 RESTful API,并在前端框架中进行调用。...可能需要配置文件加载器( Babel、TypeScript、CSS、图片等),插件(压缩、代码分割、代码优化等)等。 编译、压缩和打包 运行构建工具来编译、压缩和打包前端资源。

    18300
    领券