Flutter Web网站搭建教程

小白带你学编程 前天

作者 |  i校长
地址 |  mp.weixin.qq.com/s/VhtIcuBaSGEHcuiG95myeg

简述

曾几何时,你有没有一个搭个人网站的冲动,我这个想法在我第一次开始写博客就有了,可就是没有搭起来,直到我看到flutter有了web支持,我就在想,是时候了,必须且一定要做,于是乎我就搭建了现在的网站ibaozi.cn,代码开源至https://github.com/ibaozi-cn/ibaozi,而这次我要做的并不是基于这个网站开发,我再次申请了一个新域名jetpack.net.cn,读过我之前的博客可能直到,我做了一个Android Jetpack模版项目在线生成工具,我申请这个就是为了将Android Jetpack整合进来,提供一个好记的域名,当然我还有另一项计划,就是做一个Flutter 生态的Jetpack,这次博客就是计划的第一步,完全开源给大家,让读我博客的同学们,跟我一起搭建一个网站,顺便学习Flutter技术,好了不多说了,接下来,让我们看看如何搭建这个网站。

环境要求

  • Flutter
    需要切换beta版本来支持web开发
    环境搭建跳至之前博客:Flutter系列之环境搭建

  • Node
    下载跳至:下载| Node.js
    入门跳至:指南
    环境配置:Node.js 安装配置| 菜鸟教程
    脚手架:Express 生成器
    具体操作步骤请往下看

    Flutter 项目创建

    假装你已经搭建好环境

  • step 1
    打开终端,切换Flutter 分支

    flutter channel betaflutter upgradeflutter config --enable-webflutter devicesChrome     · chrome     · web-javascript · Google Chrome 78.0.3904.108

    一行一行执行命令,最后看到Chrome,祝贺你成功了。

  • step 2
    打开Android Studio

    项目名字、描述简单修改一下,next下一步

    修改一下包名,然后Finish,需要等待一会儿。

    项目创建成功了。这里就到这,后期博客慢慢介绍每次开发的细节。

    Node 项目创建

    我们直接打开Flutter项目的Terminal

    mkdir nodemkdir servercd node/server

    进入server目录,现在你的node环境应该也可以了吧,好开始用Express 生成器生成项目

    npm install express-generator -g //安装好了略过express --view=pug myapp

    修改myapp为你自己的项目名。执行完你会看到

    接下来

    cd myappnpm inpm start

    浏览器试下http://localhost:3000看到如下就ok了

    开始项目关联

  • step 1
    在Flutter项目中执行

    flutter build web

    构建web包,最终会在build文件夹下生成web包,web包下就是网站的相关文件。

  • step 2
    copy web包下的文件到node项目的public文件下

    我创建了一个public_flutter_web,为了是以后文件区分,也建议你做一样的操作

  • step 3
    改造express,因为默认express是展示 views包下的网页的,而且默认不是html实现。将下图中文件全部删除即可

    打开 app.js文件,删除delete标记部分,添加add标记部分

  • step 4
    保存修改,重新将服务npm start,再打开http://localhost:3000
    看到如下:

    大功告成,这样就行了吗,nono,对于一个懒惰的人来说,我们要写一些脚本,辅助项目自动构建。

  • step 5
    由于node项目目录太深,在命令行运行也很麻烦,我们写个shell脚本,来帮我搞定。在flutter项目根目录创建bin文件夹,用来放置我们的脚本

    右键New File 命名为 test_start_node.sh,内容如下

    #!/usr/bin/env bashnode node/server/bin/www

    也很简单。这个脚本就是辅助我们开启node服务。当然我们还会有flutter项目构建的一些脚本,自动copy文件到指定目录等等,这些之后慢慢补全哦。

    最后

    将代码上传至github

    ibaozi-cn/flutter-jetpack

    最后的最后

    登上你的云服务器,通过git 将项目下载到服务器上,这里我们需要工具辅助我们服务部署
    我选择pm2+nginx来将我的服务启动起来
    pm2:环境搭建
    nginx:环境搭建
    这里不详细说了,网上有一片大海,需要你去浪。有问题的留言我,我可以协助你。
    最终通过pm2 和 nginx ,项目完美运行
    jetpack.net.cn,没错你看到的是jetpack.ibaozi.cn,哈哈,域名还没下来,先用了之前的ibaozi.cn,后面我们会迁移到jetpack.net.cn。

    总结

    下期我们就开发Flutter 主页,遇到什么,需要借助什么,怎么写,为什么这么写,我们将在未来的博客中,带你一步步实现一个完整的网站,随我写下去。

- END -
(0)

相关推荐

  • docker 中运行的 jenkins 使用 npm 构建 Node.js 应用

    配置要求 最小 256MB 内存,推荐 512MB 以上 10GB硬盘空间,用于安装 Jenkins.Docker 镜像和容器 在 Docker 中运行 Jenkins 我们在服务器上面为 jenki ...

  • npm全局安装和本地安装区别

    表白:黑白圣堂血天使,天剑鬼刀阿修罗.  讲解对象:/npm全局安装和本地安装区别 作者:融水公子 rsgz Node.js教程 Node.js教程 http://www.rsgz.top/post/ ...

  • vue脚手架安装

    Node 安装 Node.js 安装包及源码下载地址为:https://nodejs.org/en/download/ 下载对应的LTS版本直接安装 NPM是随同NodeJS一起安装的包管理工具 使用 ...

  • 【vue系列之一】使用vue

    最近更新了webpack配置详解,可移步vue-cli webpack详解 对于Vue.js来说,如果你想要快速开始,那么只需要在你的html中引入一个<script>标签,加上CDN的地 ...

  • nvm切换node的版本

    有些奇葩的情况下,就是一个项目依赖的node版本和你本机的node不相同,这个时候,你有几种做法,自己亲测可行!就把找的博客整理一下,便于以后查看 1.把你本地的node卸载,然后重新下载一个node ...

  • DedeCMS网站搭建完整教程

    关键字描述:教程 完整 搭建 网站 需要 我们 模板 DedeCMS 这个 自己 今天在这里我们学习下如何使用DedeCMS系统搭建一个自己的网站,这里我们结合一个实例来具体说明网站的整个搭建的流程, ...

  • “bc视频网站搭建制作教程”是现在BC搭建制作的行业标杆

    当你想搭建制作网站,agbb点in我就推荐你找找BC视频教程彩臣科技技术服务公司,这个BC搭建制作问题可以找他提供BC搭建建站一条龙技术支持. BC网站搭建制作视频教程: 现在BC搭建制作的行业标杆, ...

  • 【组队学习】【25期】Web开发入门教程

    Web开发入门教程 开源内容: https://github.com/datawhalechina/whale-web 基本信息 贡献人员:张梁.王晓亮.何锋丽.张少波.谢文昕 学习周期:16天 学习 ...

  • UC头条:自学网站搭建技术 接单窃取用户信息

    一个软件下载链接,竟能将手机通讯录.短信聊天记录等信息全部窃取.3月26日,软件链接提供者巫某因涉嫌非法获取计算机信息系统数据.非法控制计算机信息系统罪被移送浙江省海宁市检察院审查起诉. 2020年1 ...

  • Flutter Web在美团外卖的实践

    前端技术优选 今天 以下文章来源于美团技术团队 ,作者典胜 凌霄 海阔 在多形态业务场景下,如何保障多端体验的一致性,是前端技术领域一个比较受关注的方向.美团外卖前端技术团队基于 Flutter We ...

  • 自动采集文章后SEO加工并自动发布到网站详细教程

    简数采集平台支持自动采集文章,采集完成后进行SEO处理,对提高文章的收录和网站权重有非常重要的作用,并自动或定时发布到相应的一个或多个网站,实现文章搜索采集.SEO内容优化.发布网站全流程的自动化,减 ...

  • Python做一个属于自己的web网站「下」

    原创 AI悦创 AI悦创 1周前 你好,我是悦创.昨天写了一篇:Python 做一个属于自己的web网站「上」,但有点小 bug ,什么 bug 呢?待会就说.开头这张图确实有点丑,不过奈何没办法,没 ...

  • Python 做一个属于自己的web网站「上」

    原创 AI悦创 AI悦创 1周前收录于话题#Python 自动化办公实战课25#Django4"阅读本文大概需要15分钟"你好,我是悦创.今天我们来看看自动化办公系列中的做一个自己 ...

  • 面向新手的Web服务器搭建(一)

    很多童鞋说自己是做移动开发的,想挂个简单的Web API,可是服务器又不会搭,这样一来测试就成了问题.看看网上的教程,发现略难懂,而且大多是一个转一个,没价值,所以干脆写几篇文章讲讲简单的Web服务器 ...