Estaba aprendiendo Flutter web. Ahora quiero implementar este código en el servidor real. El código de aleteo aquí: en la carpeta lib
void main() => runApp(new MyApp());
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return MaterialApp(
title: 'Flutter layout demo',
home: Scaffold(
appBar: AppBar(
title: Text('Flutter layout demo'),
),
body: Center(
child: Text('Hello World'),
),
),
);
}
}
¿Cómo puedo implementar este código en el servidor? Soy nuevo en la web de Flutter.
5 respuestas
Simplemente necesita hacer una compilación de producción utilizando una herramienta webdev
. para instalar webdev
necesitas una herramienta de publicación,
vaya a la ubicación donde tiene instalado el dardo
SDK
y dentro de la carpeta bin debería tener un archivo de publicación por lotes. Debe proporcionar la ruta de la carpeta bin a la variable de entorno para usar pub desde cmd.ahora abra cmd y presione el siguiente comando para instalar
webdev
pub global activate webdev
// en su terminal intelliJ Idea
ahora vaya a la carpeta raíz de su proyecto y realice una compilación en modo de lanzamiento
flutter build web
debería ver una carpeta de compilación (
/build/web
) en el directorio raíz, solo copie esa carpeta y guárdela en un servidor web.
Usé el mismo modo para implementarlo en GitHub páginas a continuación se detalla la guía detallada
Algunos enlaces útiles: https://dart.dev/tools/webdev#build
Aquí está la aplicación flutterweb en ejecución
Puede implementar su aplicación web flutter en un alojamiento compartido con Nodejs o en el servidor VPS con Python Siga este medio Blog Publicar
Después de compilar su aplicación web flutter con "flutter build web" y desea alojarla en un plan de alojamiento compartido, prepare su aplicación nodejs como un servidor simple para su aplicación web flutter aquí hay un código de muestra
App.js
var express = require('express');
var path = require('path');
var cookieParser = require('cookie-parser');
var logger = require('morgan');
var app = express();
app.use(logger('dev'));
app.use(express.json());
app.use(express.urlencoded({ extended: false }));
app.use(cookieParser());
app.use(express.static(path.join(__dirname, 'public-flutter')));
module.exports = app;
Package.json
{
"name": "flutter-web-app",
"version": "0.0.0",
"private": true,
"scripts": {
"start": "node ./bin/www"
},
"dependencies": {
"cookie-parser": "~1.4.4",
"debug": "~2.6.9",
"express": "~4.16.1",
"morgan": "~1.9.1"
}
}
Cree una carpeta y asígnele un nombre ("public-flutter") y luego coloque su aplicación web flutter en la carpeta que acaba de crear para que nodejs pueda servirla a través de su servidor si se encuentra en un alojamiento compartido solo continúe con la publicación del blog aquí
Y si está en un servidor VPS, ejecute este comando si desea servidor de la aplicación nodejs
node app.js
O si no desea nodejs, simplemente use python en su aplicación web flutter para servirlo como un simple servidor http con este comando
nohup python -m SimpleHTTPServer 8000 &
Solo asegúrese de estar en la carpeta de su aplicación web cuando ejecute el comando. "nohub" permitirá que el comando siga ejecutándose incluso si cerró la sesión SSH en Linux. O puede servir su aplicación a través de las herramientas Dart pub / webdev utilizando el paquete dhttpd.
Si desea utilizar su propio servidor a través de la web e.q su host privado virtual u otro host a través de la red:
Vaya a la carpeta raíz de su proyecto y realice una compilación en modo de lanzamiento flutter build web
, luego
Subir el directorio (/build/web)
a su servidor, puede seguir este enlace y configure IIS en el servidor de Windows.
Aquí está la manera simple de implementar su aplicación web flutter en el servidor web de Amazon.
El siguiente es el proceso simple que sigo.
- Construir web de aleteo:
flutter build web —release
- Crear instancia en el servidor aws ec2: significa asignar algo de memoria para su sitio web en el servidor. La instancia es el servidor virtual en la nube aws.
- Conéctese a su servidor (instancia) con la ayuda de putty:
- Instale el panel de control de Vesta en su servidor. (puede instalar otro panel de control también si no te gusta vesta).
- Cargue su contenido (sitio web) en el servidor. (Con la ayuda de FileZilla puede cargar fácilmente el contenido de su sitio web en el servidor)
Aquí está el video tutorial simple: https://youtu.be/htuHNO9JeRU
Si se trata de un proyecto Firebase, puede usar Firebase Hosting .
Te pedirá que instales Firebase Tools en tu sistema y tendrás que inicializarlo en la carpeta raíz de tu proyecto.
Entonces solo tienes que:
flutter build web
firebase deploy
Y actualice el navegador (tal vez con ctrl + F5 o ctrl + shift + r )
Preguntas relacionadas
Nuevas preguntas
dart
Dart es un lenguaje de programación basado en clases, estático (y fuertemente) para construir aplicaciones web y móviles. Dart compila a JavaScript moderno para ejecutar en el navegador y compila a código nativo para ejecutar en plataformas móviles como Android e iOS. Dart también se ejecuta en la línea de comandos para scripts y aplicaciones del lado del servidor.