EmberJS - 渲染模板

路由用于将外部模板渲染到屏幕,这可以通过在路由处理程序中定义 templateName 来实现。

语法

Ember.Route.extend ({
    templateName: 'path'
});

示例

以下示例显示如何渲染用于显示数据的模板。按照前几章中的说明创建一个新路由。在这里,我们将路由创建为帖子,并使用以下代码打开 router.js 文件来定义 URL 映射 −

import Ember from 'ember';
//以变量 Ember 的形式访问 Ember.js 库
import config from './config/environment';
//它以变量 config 的形式提供对应用程序配置数据的访问

//const 声明只读变量
const Router = Ember.Router.extend ({
   location: config.locationType,
   rootURL: config.rootURL
});

Router.map(function() {
   this.route('posts', function() {
      this.route('new');
   });
});

//它指定了可供应用程序其他部分使用的 Router 变量

export default Router;

创建 application.hbs 文件并在其中添加以下代码 −

//link-to 是用于创建链接的 handlebar 助手
{{#link-to 'posts'}}单击此处{{/link-to}}
{{outlet}} //它是一个通用助手,其他页面的内容
将显示在此部分内

使用以下代码打开在 app/routes/ 下创建的文件 posts.js

import Ember from 'ember';

export default Ember.Route.extend ({
    templateName: 'posts/new'
});

使用以下代码打开 app/templates/ 下创建的 posts/new.hbs 文件 −

<h2>Posts</h2>
Page is rendered by defining templateName property.
{{outlet}}

输出

运行 ember 服务器,您将收到以下输出 −

Ember.js Render Template

当您单击输出中收到的链接时,它将生成如下图所示的结果 −

Ember.js Render Template

emberjs_router.html