【问题标题】:how to run nodejs flatiron/director example如何运行 nodejs flatiron/director 示例
【发布时间】:2012-08-19 10:07:07
【问题描述】:

我尝试运行https://github.com/flatiron/director#client-side 示例来熟悉director.js。

我无法在客户端设置 flatiron 模块。

在我的 html 页面(例如,<my_project>/page.html)中,我将director.js 的位置替换为 我的项目中对应的位置:

<my_project>/node_modules/flatiron/node_modules/director/lib/director.js

在浏览器中加载<my_project>/page.html 页面时 我收到错误:未定义导出和路由器。

第一个想法:毕竟浏览器端没有nodejs……

好的,我认为 browserify 可以帮助我。 我生成了一个“浏览器端”包(有必要吗?):

my_project> node node_modules/browserify/bin/cli.js node_modules/flatiron/node_modules/director/lib director.js -o cs_director.js

我在该行中使用了它:<script src="cs_director.js"></script>

问题在于错误

Uncaught ReferenceError: Router is not defined
(anonymous function)

仍然出现,所以我猜整个例子都行不通。

我是 node/js 的新手,我不确定我在上述案例中所做的事情是否有意义...... 有人怎么解决吗?

或者一般来说,如何在浏览器端使用“同构”的东西? Github 上的 html 示例只是引用相同的 .js 文件 作为服务器端示例...

你能推荐一些教程、例子吗?

谢谢, -gvlax

【问题讨论】:

    标签: node.js flatiron.js


    【解决方案1】:

    您可以找到director here 的特定于浏览器的构建,它已剥离所有服务器代码。

    【讨论】:

      【解决方案2】:

      感谢 DeadDEnD,

      现在它就像一个魅力!

      我不知道我怎么会错过自述文件中的这些信息...我先阅读了手册,我发誓:-)

      这是我的示例代码:

        <!html>
        <html>
          <head>
            <script src="director-1.0.7.min.js"></script>
      
                  <script>
      
              var author = function () { console.log("author called.");},
                  books = function () { console.log("books called."); },
                  viewBook = function(bookId) { console.log("viewBook called."); };
      
              var routes = {
                '/author': author,
                '/books': [books, function() { console.log("anonymous fun called."); }],
                '/books/view/:bookId': viewBook
              };
      
              var router = Router(routes);
              router.init();
      
            </script>
          </head>
          <body>
              Click <a href="#/books">me</a> to call two functions at a time. 
          </body>
        </html>
      

      --gvlax

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2016-04-14
        • 2016-04-26
        • 2021-03-06
        • 2012-09-13
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多