Knockout.js samm.js标题比普通javascript标题有什么优势吗?

Knockout.js samm.js标题比普通javascript标题有什么优势吗?,knockout.js,single-page-application,sammy.js,Knockout.js,Single Page Application,Sammy.js,我正在使用knockout和sammy.js作为我的小型单页应用程序 在路由过程中导航时,我需要修改浏览器窗口的标题。Sammy.js有一个处理这个问题的方法,但是在我看来,这只是document.title='…'的一个简单包装 那么,与我路线中的普通document.title相比,这个插件有什么优势呢?更改窗口标题所需的唯一一件事就是修改document.title属性。这个Sammy插件提供了一种构建标题的方法 看看他们的源代码,他们提供了两种选择: (1) 使用setTitle并给它一

我正在使用knockout和sammy.js作为我的小型单页应用程序

在路由过程中导航时,我需要修改浏览器窗口的标题。Sammy.js有一个处理这个问题的方法,但是在我看来,这只是
document.title='…'的一个简单包装


那么,与我路线中的普通document.title相比,这个插件有什么优势呢?

更改窗口标题所需的唯一一件事就是修改document.title属性。这个Sammy插件提供了一种构建标题的方法

看看他们的源代码,他们提供了两种选择:

(1) 使用setTitle并给它一个字符串。这将设置标题的第一部分,该部分将在整个应用程序中继续使用。它不会更改浏览器的标题

示例(来自其源代码):

现在,对于每个需要唯一标题的路线,您接下来要做的是:

this.title('Home');
现在出现在浏览器标题中的结果标题是:“我的应用-主页”
在另一个页面上可能是:“我的应用程序-服务”
等等这允许您轻松地将静态部分保留在标题中,以防您永远不希望它消失

(2) 提供您自己的函数来构建标题。如果您有很多条件或特殊规则要遵循,这将非常有用。您的函数可以简单地将所有内容转换为大写或其他您需要的内容

例如:

this.setTitle(function(title) {
    return title.toUpperCase();
});
现在,当您设置标题时,它将始终为大写

this.title('Home');
最终的标题将是:主页


简而言之,若你们有简单的标题想用,那个么请尽量直接使用document.title。如果您有规则、转换或希望将公司名称保留在页面标题的开头,那么您可能需要使用插件。

很好的解释。非常感谢。
this.title('Home');