【问题标题】:Avoid all layouts being combined into one page?避免将所有布局合并到一个页面中?
【发布时间】:2015-11-13 05:49:17
【问题描述】:

我正在尝试将我在 html 上的引导文件转移到使用流星实现。我希望所有内容都在单独的页面上,但是即使我通过 angular-ui-router 路由文件,我的程序也会在一页上显示我的所有页面。这是我放置在根/客户端文件夹中的 routes.js 文件:

angular.module("project").config(['$urlRouterProvider', '$stateProvider', '$locationProvider',
  function($urlRouterProvider, $stateProvider, $locationProvider){

    $locationProvider.html5Mode(true);

    $stateProvider
      .state('aboutus', {
      url: '/aboutus',
      templateUrl: 'client/views/about.html',
      })
      .state('contactus',{
          url: '/contactus', 
          templateUrl: 'client/views/contact.html',
      })
      .state('home', {
          url: '/home', 
          templateUrl: 'client/views/index.html',
      })
      .state('services', {
        url: '/services',
        templateUrl: 'client/views/services.html',
      })

    $urlRouterProvider.otherwise("/home");
  }]);

如果你想查看整个项目,这里是: https://github.com/Aggr0vatE/project

【问题讨论】:

  • 问题是?
  • 我正在努力做到这一点,以便有多个路线而不是所有内容都显示在一个页面上

标签: javascript angularjs twitter-bootstrap meteor


【解决方案1】:

来自文档 (http://docs.meteor.com/#/full/structuringyourapp):

Meteor 会扫描目录中的所有 HTML 文件以查找三个顶级元素:<head><body><template>。头部和主体部分分别连接成一个单独的头部和主体,在初始页面加载时传输给客户端。

您需要构建 html 文件以利用 Meteor 模板。事实上,headbody 标记中的所有内容都包含在内,这就是为什么将它们连接到一个页面中的原因。我建议阅读上面链接中的一些文档。

【讨论】:

  • 所以我从我的 4 个 html 文件中取出了所有的 body 和 head 标签,但现在我收到一条错误消息,说我的 html 模板格式不正确。
  • 你拿出实际的标签了吗?或者他们持有的标签和内容?再次.. 我建议阅读有关 Meteor 模板的文档
  • 是的,我取出了实际的标签。我这样做是因为其他流星项目似乎根本没有任何标签。
  • 那么它的 html 无效。您需要将内容放在 Meteor 中的 <head><body><template> 标记中
  • 那么如果没有流星将它们连接到一个文件中,应该如何将它们分开呢?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多