浏览代码

add dynamic title (#1062)

杨奕 8 年之前
父节点
当前提交
c4ad7f23da
共有 4 个文件被更改,包括 24 次插入1 次删除
  1. 5 0
      examples/entry.js
  2. 1 1
      examples/i18n/page.json
  3. 14 0
      examples/i18n/title.js
  4. 4 0
      examples/route.config.js

+ 5 - 0
examples/entry.js

@@ -9,6 +9,7 @@ import MainFooter from './components/footer.vue';
 import MainHeader from './components/header.vue';
 import MainHeader from './components/header.vue';
 import SideNav from './components/side-nav';
 import SideNav from './components/side-nav';
 import FooterNav from './components/footer-nav';
 import FooterNav from './components/footer-nav';
+import title from './i18n/title';
 
 
 Vue.use(Element);
 Vue.use(Element);
 Vue.use(VueRouter);
 Vue.use(VueRouter);
@@ -24,6 +25,10 @@ const router = new VueRouter({
   routes
   routes
 });
 });
 
 
+router.afterEach(route => {
+  document.title = title[route.meta.lang][route.name] || 'Element';
+});
+
 new Vue({ // eslint-disable-line
 new Vue({ // eslint-disable-line
   render: h => h(entry),
   render: h => h(entry),
   router
   router

+ 1 - 1
examples/i18n/page.json

@@ -79,7 +79,7 @@
         "15": "适用于导航较少,页面篇幅较长的网站。"
         "15": "适用于导航较少,页面篇幅较长的网站。"
       },
       },
       "resource": {
       "resource": {
-        "paraHeight": "1.2",
+        "paraHeight": "1.8",
         "1": "资源",
         "1": "资源",
         "2": "这里提供 Element 相关设计资源和设计工具的下载,更多设计资源正在整理和完善中。",
         "2": "这里提供 Element 相关设计资源和设计工具的下载,更多设计资源正在整理和完善中。",
         "3": "Axure Components",
         "3": "Axure Components",

+ 14 - 0
examples/i18n/title.js

@@ -0,0 +1,14 @@
+export default {
+  'zh-CN': {
+    home: 'Element - 网站快速成型工具',
+    guide: '指南 | Element',
+    component: '组件 | Element',
+    resource: '资源 | Element'
+  },
+  'en-US': {
+    home: 'Element - A Desktop UI Library',
+    guide: 'Guide | Element',
+    component: 'Component | Element',
+    resource: 'Resource | Element'
+  }
+};

+ 4 - 0
examples/route.config.js

@@ -38,6 +38,7 @@ const registerRoute = (navConfig) => {
         description: page.description,
         description: page.description,
         lang
         lang
       },
       },
+      name: 'component',
       component: component.default || component
       component: component.default || component
     };
     };
 
 
@@ -56,10 +57,12 @@ const generateMiscRoutes = function(lang) {
     component: require(`./pages/${ lang }/guide.vue`),
     component: require(`./pages/${ lang }/guide.vue`),
     children: [{
     children: [{
       path: 'design', // 设计原则
       path: 'design', // 设计原则
+      name: 'guide',
       meta: { lang },
       meta: { lang },
       component: require(`./pages/${ lang }/design.vue`)
       component: require(`./pages/${ lang }/design.vue`)
     }, {
     }, {
       path: 'nav', // 导航
       path: 'nav', // 导航
+      name: 'guide',
       meta: { lang },
       meta: { lang },
       component: require(`./pages/${ lang }/nav.vue`)
       component: require(`./pages/${ lang }/nav.vue`)
     }]
     }]
@@ -68,6 +71,7 @@ const generateMiscRoutes = function(lang) {
   let resourceRoute = {
   let resourceRoute = {
     path: `/${ lang }/resource`, // 资源
     path: `/${ lang }/resource`, // 资源
     meta: { lang },
     meta: { lang },
+    name: 'resource',
     component: require(`./pages/${ lang }/resource.vue`)
     component: require(`./pages/${ lang }/resource.vue`)
   };
   };