在 Glimmer js 中设置和初始化路由
Setup and Initialize Route in Glimmer js
不久前我听说 glimmer 并决定尝试一下。
现在我已经尝试完成他们的教程并看到 glimmer 已经创建的 todo-mvc,但他们似乎使用 navigo 浏览页面。
我想知道是否有任何正确的方法来设置路线,因为我以前使用 ember.js 并且设置路线我只需要在 router.js.
添加另一条路线
因为现在使用 navigo 我使用这样的代码来导航路线
component.ts
import Component, { tracked } from '@glimmer/component';
import Navigo from 'navigo';
const router = new Navigo(null, true);
export default class MainPage extends Component {
@tracked routeName;
constructor(options){
super(options);
router
.on({
'/': () => { this.routeName = 'home'; },
'/posts': () => { this.routeName = 'postList'; }
})
.resolve();
}
};
template.hbs
<div>
<a href="#/posts"><button>See All Posts</button></a>
{{#if (eq routeName 'postList')}}
<post-list />
{{/if}}
{{#if (eq routeName '404')}}
<h1>PAGE NOT FOUND</h1>
{{/if}}
</div>
以上代码有效,但需要我在域名后加上#。我认为需要找到另一种方法或者比这个更合适的方法。
你的问题目前的答案是Glimmer没有路由这样的概念。将来,您应该能够安装 Ember 的部分内容 - 例如 Ember 路由到您的 Glimmer 应用程序。
基本上,它会像这样工作:
Glimmer 应用程序 -> 安装所有 Ember 包 = Ember 应用程序。
或者:
Glimmer 应用程序 -> 仅安装几个 Ember 包 = Glimmer + 来自 Ember 的部分,例如路由。
不久前我听说 glimmer 并决定尝试一下。
现在我已经尝试完成他们的教程并看到 glimmer 已经创建的 todo-mvc,但他们似乎使用 navigo 浏览页面。
我想知道是否有任何正确的方法来设置路线,因为我以前使用 ember.js 并且设置路线我只需要在 router.js.
添加另一条路线因为现在使用 navigo 我使用这样的代码来导航路线
component.ts
import Component, { tracked } from '@glimmer/component';
import Navigo from 'navigo';
const router = new Navigo(null, true);
export default class MainPage extends Component {
@tracked routeName;
constructor(options){
super(options);
router
.on({
'/': () => { this.routeName = 'home'; },
'/posts': () => { this.routeName = 'postList'; }
})
.resolve();
}
};
template.hbs
<div>
<a href="#/posts"><button>See All Posts</button></a>
{{#if (eq routeName 'postList')}}
<post-list />
{{/if}}
{{#if (eq routeName '404')}}
<h1>PAGE NOT FOUND</h1>
{{/if}}
</div>
以上代码有效,但需要我在域名后加上#。我认为需要找到另一种方法或者比这个更合适的方法。
你的问题目前的答案是Glimmer没有路由这样的概念。将来,您应该能够安装 Ember 的部分内容 - 例如 Ember 路由到您的 Glimmer 应用程序。
基本上,它会像这样工作:
Glimmer 应用程序 -> 安装所有 Ember 包 = Ember 应用程序。
或者:
Glimmer 应用程序 -> 仅安装几个 Ember 包 = Glimmer + 来自 Ember 的部分,例如路由。