Flutter Web网站搭建教程

news/2024/5/21 0:35:23/文章来源:https://blog.csdn.net/m0_46622598/article/details/105259375

简述

曾几何时,你有没有一个搭个人网站的冲动,我这个想法在我第一次开始写博客就有了,可就是没有搭起来,直到我看到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 beta
flutter upgrade
flutter config --enable-web
flutter devices
Chrome     • chrome     • web-javascript • Google Chrome 78.0.3904.108

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

  • step 2
    打开Android Studio



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

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

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

Node 项目创建

我们直接打开Flutter项目的Terminal

mkdir node
mkdir server
cd node/server

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

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

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

cd myapp
npm i
npm 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 bash
node 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 主页,遇到什么,需要借助什么,怎么写,为什么这么写,我们将在未来的博客中,带你一步步实现一个完整的网站,随我写下去。如果你想参与开发,请私聊我,合作共赢,加油。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_893821.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Flutter Web网站之Jetpack成型

往期 Flutter Web网站搭建教程Flutter Web 网站之主页框架搭建 上期回顾 上期我们做了一个能兼容不同屏幕大小的主页,来适配Web、Android等平台。主要用到了**MediaQuery**来动态获取屏幕的宽度,来动态适配UI。 本期内容 好消息,我申请的…

Flutter Web网站之ScrollView+GridView优化

往期 Flutter Web网站搭建教程Flutter Web 网站之主页框架搭建Flutter Web网站之Jetpack成型 上期回顾 上期我们做了简单的分包处理,然后就用了SingleChildScrollViewGridView为主要的框架实现了网格布局以及上下滑动效果,Chrome Web以及原生体验并没有发…

Flutter Web网站之最简方式实现暗黑主题无缝切换

往期 Flutter Web网站搭建教程Flutter Web 网站之主页框架搭建Flutter Web网站之Jetpack成型Flutter Web网站之ScrollViewGridView优化 上期回顾 上期我们做了优化,主要针对ScrollViewGridView的使用场景,用了更加合适的组件,这期想做一个…

Flutter Web网站之Markdown展示与博客列表

往期 Flutter Web网站搭建教程Flutter Web网站之主页框架搭建Flutter Web网站之Jetpack成型Flutter Web网站之ScrollViewGridView优化Flutter Web网站之最简方式实现暗黑主题无缝切换 上期回顾 上期主要实现了主题切换,通过StreamBuilder来动态的切换ThemeData&…

关于云服务器中IE浏览器无法下载和登录网站的问题解决方案

关于云服务器IE浏览器无法下载和登录网站的问题解决方案 原因解决方案 原因 IE浏览器增强安全配置已启用,导致网站的访问权限降低 解决方案 1.进入服务器管理器 2.如图所示,本地服务器-IE增强的安全配置 3.设置为关闭 即可

asp.net802-个人博客网站空间管理系统#毕业设计

项目编号:asp.net802-个人博客网站空间管理系统 运行环境:VSSQL 开发工具:VS2010及以上版本 数据库:SQL2008及以上版本 使用技术:HTMLJSHTML 开发语言:C#,框架:asp.net 互联网彻底改变了我们每个人的生活&#x…

asp.net829家乡土特产销售网站#毕业设计

项目编号:asp.net829家乡土特产销售网站#毕业设计 运行环境:VSSQL 开发工具:VS2010及以上版本 数据库:SQL2008及以上版本 使用技术:HTMLJSHTML 开发语言:C#,框架:asp.net 基本每个地方都有自己的特产&#xff0c…

asp.net831手工制作方面的社交网站#毕业设计

项目编号:asp.net831手工制作方面的社交网站#毕业设计 运行环境:VSSQL 开发工具:VS2010及以上版本 数据库:SQL2008及以上版本 使用技术:HTMLJSHTML 开发语言:C#,框架:asp.net ​一直以来,都有很多的手…

asp.net824个人财务管理网站#毕业设计

项目编号:asp.net824个人财务管理网站#毕业设计 运行环境:VSSQL 开发工具:VS2010及以上版本 数据库:SQL2008及以上版本 使用技术:HTMLJSHTML 开发语言:C#,框架:asp.net 个人财务信息管理系统的开发目的是使个人财…

asp.net836护肤品评测网站#毕业设计

项目编号:asp.net836护肤品评测网站#毕业设计 运行环境:VSSQL 开发工具:VS2010及以上版本 数据库:SQL2008及以上版本 使用技术:HTMLJSHTML 开发语言:C#,框架:asp.net 越来越多的人接受了电子商务这种便捷、快速的…

asp.net838服装展示销售网站毕业设计

项目编号:asp.net838服装展示销售网站毕业设计 运行环境:VSSQL 开发工具:VS2010及以上版本 数据库:SQL2008及以上版本 使用技术:HTMLJSHTML 开发语言:C#,框架:asp.net 服装基本是每个人每一天都会接触到的东西&a…

asp.net843课程网站设计与开发#毕业设计

项目编号:asp.net843课程网站设计与开发#毕业设计 运行环境:VSSQL 开发工具:VS2010及以上版本 数据库:SQL2008及以上版本 使用技术:HTMLJSHTML 开发语言:C#,框架:asp.net 学习是人类进步的阶梯,只有不…

asp.net848化妆品销售网站#毕业设计

项目编号:asp.net848化妆品销售网站#毕业设计 运行环境:VSSQL 开发工具:VS2010及以上版本 数据库:SQL2008及以上版本 使用技术:HTMLJSHTML 开发语言:C#,框架:asp.net 化妆品基本是每一个女士每天都会使用到的一个…

python+djaongo的汉服文化交流网站汉服销售网站

开发语言:Python 开发工具:pycharm 数据库:MYSQL5.7 使用框架:djangovue 随着我国文化的不断复兴,很多文化元素也正在不断的出现在街头小巷之中, 其中汉服文化就是一个典型的代表,当前在很多拥有历史沉淀的景点,经常可以看到很多年…

Java+mysql基于SSM的公司办公网站OA系统#毕业设计

开发语言:Java 开发工具:IDEA /Eclipse 数据库:MYSQL5.7 应用服务:Tomcat7/Tomcat8 使用框架:ssm 随着我国经济的发展, 各类企业也在不断的增加,相应的办公的业务也在不断的增多,这就给日常的办公提出了新的要求,很明显传统的办公…

基于springboot+vue的电影视频订票咨询网站系统-Java项目毕业设计

项目介绍 随着网络不断的普及发展,影城管理系统依靠网络技术的支持得到了快速的发展,首先要从用户的实际需求出发,通过了解用户的需求开发出具有针对性的首页、电影信息、电影资讯、个人中心、后台管理、在线客服功能 影城管理系统的主要使用…

手搭我的世界基岩版服务器后台网站(LiteloaderBDS-SQLite-Spring Boot-Vue)Java后端+RESTful API;借助Three.js实现三维可视化展览交互界面

项目是刚刚完成的,于是趁热打铁把文档也写了。在这里分享出来,也方便以后回顾 目录 项目介绍 整体设计架构图 网站界面预览图 技术选型和原因 搭建步骤 库表设计 插件说明 后端说明 前端说明 部署说明 完整代码 插件代码 后端代码 前端代…

基于Python+django的茶叶销售商城网站

开发语言:Python 编号:py215-基于Python的茶叶销售商城网站 python框架:django 软件版本:python3.7/python3.8 数据库:mysql 5.7或更高版本 数据库工具:Navicat11 开发软件:PyCharm/vs code 前端…

基于Python+django的宠物销售商城网站#毕业设计

开发语言:Python 编号:py216-基于Python的宠物销售商城网站 python框架:django 软件版本:python3.7/python3.8 数据库:mysql 5.7或更高版本 数据库工具:Navicat11 开发软件:PyCharm/vs code 前端…

py217-基于Python+django的服装销售商城网站#毕业设计

开发语言:Python 编号:py217-基于Python的服装销售商城网站 python框架:django 软件版本:python3.7/python3.8 数据库:mysql 5.7或更高版本 数据库工具:Navicat11 开发软件:PyCharm/vs code 前端…