【问题标题】:sammy.js url not found cause of subdirectorysammy.js url 未找到子目录的原因
【发布时间】:2013-11-10 11:28:13
【问题描述】:

您好,我创建了一个带有击倒、放大和 sammy 的水疗中心。

如果我现在点击如下链接:

#/page?s=About

它链接到 url.de/subdirectory/#/page?s=About 这是正确的,但控制台会触发以下错误: 获取 url.de/关于 404(未找到) 因为它应该是: url.de/subdirectory/关于

我的 sammy 代码是:

var app=$.sammy(function () {

        // define prexecutes

        // update parameters in appModel from request for all routes
        this.before('', function() {
            //setParameters(this);
        });

        // authenticate on any page except for login and logout routes
        this.before({except: {path:/\/(login|logout|hp)/}}, function() {

        });

        // actual routes

        // home

        this.get('#/', function() {
            appModel.page("home");
            return false;
        });

        // content

        this.get('#/page', function(eventContext) {

            content(eventContext);
        });

    });

    app.run('#/');

如何让 sammy 不忽略我的网站所在的子目录?

【问题讨论】:

    标签: javascript knockout.js sammy.js amplifyjs


    【解决方案1】:

    您可以尝试使用类似这样的另一个自定义路由定义

    this.get('#/page/:s', function(eventContext) { // where s is parametre
    
                content(eventContext);
            });
    

    也可以像这样使用网址

    #/page/About  // it will read 'About' as value of parameter 's'
    

    而不是

    #/page?s=About
    

    希望对你有帮助

    【讨论】:

    • 这并没有解决,我的网站在 ab 子目录中,但 sammy 忽略了这个子目录并尝试从 root 获取 url。
    【解决方案2】:

    我最近自己也遇到过类似的情况。我找不到任何允许 Sammy.js 路由到子目录的配置选项或解决方法。我的解决方案是在托管我的应用程序的服务器上创建一个虚拟主机,并将子目录作为子域,以便将应用程序放在文档根目录中。在您的情况下,虚拟服务器将从url.de/subdir/About 映射到subdir.url.de/About。我意识到这对您来说可能是不可能的(因为我不知道您对托管环境有多少控制权),但它让我很快再次行动起来。希望这会有所帮助。

    附:顺便说一句,我刚刚浏览了https://github.com/quirkey/sammy 的 Sammy.js 源代码,并且似乎删除了子目录(错误地)以修复 IE 怪癖。 https://github.com/quirkey/sammy/blob/master/lib/sammy.js#L301 可能是问题所在。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-10-05
      • 2020-04-13
      • 1970-01-01
      • 2012-05-24
      • 2017-11-05
      • 1970-01-01
      • 2010-12-14
      相关资源
      最近更新 更多