gpt4 book ai didi

dart - 使用hashbang的App Engine + Polymer.dart单页网络应用程序路由

转载 作者:行者123 更新时间:2023-12-03 03:44:22 25 4
gpt4 key购买 nike

我正在使用polymer.dart创建一个单页Web应用程序,并希望将其部署在Google App Engine上。我在路由中堆叠

我正在为服务器使用redstone和rack_static,为客户端使用route_hierarchical。

bin / server.dart

import 'package:appengine/appengine.dart';

import 'package:redstone/server.dart' as app;
import 'package:shelf_static/shelf_static.dart';

main() {
var staticHandler = createStaticHandler("web",
defaultDocument: "index.html", serveFilesOutsidePath: true);

app.setShelfHandler(staticHandler);

app.setupConsoleLog();
app.setUp();

runAppEngine(app.handleRequest);
}

lib / main_app / main_app.dart
import 'package:polymer/polymer.dart';

import 'package:route_hierarchical/client.dart';

@CustomTag('main-app')
class MainApp extends PolymerElement {
final Router router = new Router();

MainApp.created() : super.created();

ready() {
print("Main App: ready()");

router.root
..addRoute(name: 'home', path: '/', enter: showHome, defaultRoute: true)
..addRoute(name: 'login', path: '/#!/login', enter: showLogin);

router.listen();
}

void showHome(RouteEvent event) {
print("Main App: showHome()");
}

void showLogin(RouteEvent event) {
print("Main App: showLogin()");
}
}

lib / main_app / main_app.html

web / index.html

页数
  • 主页:localhost:8080 /
  • 登录名:localhost:8080 /#!/ login

  • 如果我使用“pub serve”命令在本地运行该应用程序,那么它将起作用。
    但是,如果我使用“gcloud Preview app run app.yaml”命令在appengine上运行它,则登录路由无法正常工作并记录错误。
    http://prntscr.com/77adww

    最佳答案

    我终于让它工作了!问题是,我就像@Jake MacDonald所说的那样运行未转换的输出。就是这样

    更换

    var staticHandler = createStaticHandler("web", defaultDocument: "index.html", serveFilesOutsidePath: true);


    var staticHandler = createStaticHandler("build/web", defaultDocument: "index.html", serveFilesOutsidePath: true);

    关于dart - 使用hashbang的App Engine + Polymer.dart单页网络应用程序路由,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30346409/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com