【问题标题】:brunch/jade single page client-only appbrunch/jade 单页客户端专用应用
【发布时间】:2015-04-25 19:55:36
【问题描述】:

有人知道如何使用 brunch/jade 开发本地(仅限客户端!)应用程序吗?我想要什么:我不需要服务器,我想创建一个“应用程序”,意思是一个在 USB 记忆棒上完全脱机运行的简单“网页”。理想情况下,它由 一个 html一个 css一个 js 文件组成。

这可以用早午餐和玉来完成吗? 我并没有真正得到翡翠/早午餐的连接——我的应用程序现在使用由翡翠模板制作的静态 html 页面。但我更想要的是将所有 html “连接”到一个文件中,该文件通过 javascript 动态加载内容。内容完全是静态的,不需要数据库。

我知道早午餐的工作原理(已经有一个项目)。我不知道的是:如何在没有服务器端部分的情况下管理单页站点内的链接和路由?我需要一个 Js 库吗?

欢迎任何提示。

【问题讨论】:

    标签: html client pug brunch


    【解决方案1】:

    是的。你可能会编译 2 个脚本,app.jstemplates.js

    您需要编写或包含客户端路由器; jkingyens/brunch-dutch-baby 使用 Jade + Backbone.Router

    【讨论】:

    • 谢谢(一直以来)。我是手动完成的,只为路由器和模型使用了主干.js。完美运行。
    【解决方案2】:

    是的,这是可能的。

    这里有很多骷髅:http://brunch.io/skeletons.html。我们可以选择多种骨架。

    所以你想用早午餐和玉。 看来https://github.com/TessaHarmon/brunch-jade-stylus 是最小的。

    $ brunch new gh:TessaHarmon/brunch-jade-stylus new-application
    $ cd new-application
    $ brunch watch --server
    24 Feb 10:14:05 - info: application started on http://localhost:3333/
    24 Feb 10:14:05 - info: compiled 4 files into 2 files, copied index.html in 357ms
    
    /Users/banyan/tmp/new-application/node_modules/static-jade-brunch/node_modules/jade/lib/runtime.js:231
      throw err;
            ^
    Error: app/index.static.jade:1
      > 1| !!! 5
        2| // if IE 6
        3|   <html id="ie6" lang="en">
        4| // if IE 7
    

    哎呀,玉抱怨。只需将!!! 5 固定为app/index.static.jade 中的document html。然后再次brunch watch --server,现在我们可以在http://localhost:3333 看到Brunch-jade-stylus 的空白页。如果要换sass而不是stylus,需要在package.json中使用sass-brunch

    【讨论】:

    • 嗯。这不是我要求的——也许我写的问题不是很容易理解。我知道骷髅,我已经有一个玉石项目(手写笔/sass不要打扰我)。我想知道的是我如何将应用程序编译成一个文件,必须在 html 文件中加载什么?我并没有真正了解翡翠系统,翡翠页面对此一无所知(我理解)。玉器内容如何调用?我需要像backbone.js 之类的后端吗?我如何提供例如2个链接,当我点击每个链接时,会显示相应的翡翠页面。这就是我需要的。
    • brunch build,然后在公共目录下查看。一切都合并到一个文件中。如果您不需要 pushState,则可以使用纯标签。
    • ;-) 我知道早午餐是如何工作的......我的问题是:如果有标签 Page2,则链接有效,因为有page2.html 文件。如果所有内容都编译到一个文件中,a href 链接指向哪里?这里需要调用哪个js命令来加载另一个jade页面?只有一个文件是不够的 - AFAIK 我需要类似后端的东西 - 不是吗?您能否为a href 问题提供一个示例解决方案?我认为我的问题比你想象的要抽象一点 ;-)
    • 对不起,现在我知道你想要什么(我不擅长英语:P)是的,你绝对是正确的。我们不需要服务器。我有一堆应用程序,它使用 html/js/css 在 Amazon S3 上运行。通常,如果浏览器接受或只是散列,我们会使用 pushState。有很多图书馆可以解决这个问题。也许你可以看看backbonejs.org/#Router。这个网站本身包含一个 html (backbonejs.org/index.html) 和链接是这样的i.gyazo.com/ee70e3293fcad80f657485b457deb9cb.png,希望这会有所帮助:)
    • AAAHHH,这启发了我!非常感谢。您能否将其发布为(也许是新的)答案,以便我可以将其标记为正确答案(并且您获得来之不易的学分)? ;-)
    猜你喜欢
    • 2011-09-28
    • 2021-06-07
    • 1970-01-01
    • 2014-04-09
    • 2012-11-28
    • 2023-04-05
    • 2015-05-26
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多