UI-Router:param值对状态无效

Eya*_*hen 5 javascript jquery node.js angularjs angular-ui-router

这个问题的github回购

我绝对没有希望.

我创建了一个角度1.5.8的应用程序,在屏幕上显示节点.有两种类型的节点 - 文件夹和图片.

当点击图片节点时,它应该使用ui-router传递params,而我正在做的ui-router docs说.

插入{{picture.url}}和其他所有内容都可以正常工作并提供正确的文件路径.

奇怪的是,当我这样做时,通过转到:/ picture/url它是通过文件的路径.

我得到的错误是:Param值对状态'picture'无效

app.config(function ($stateProvider, $urlRouteProvide) {
           $stateProvider
            .state('picture', {
                url:'/picture/:url',
                template:'<h1> Picture </h1> <br /> <img  class="mainImg" src={{ctrl.pic}} />`',
                controller:function($stateParams) {
                    console.log($stateParams);
                    this.pic = `../img/${$stateParams.url}`
                },
                controllerAs: 'ctrl'
        });
     });
Run Code Online (Sandbox Code Playgroud)
<ul>
  <li class='picture' ng-repeat='picture in home.pictures track by $index'>
    <a ui-sref='picture({ url: {{picture.url}} })'> {{picture.type}} </a>
  </li>
</ul>
Run Code Online (Sandbox Code Playgroud)

任何帮助都会很棒.不管怎么说,还是要谢谢你!的Eyal

Fre*_*jck 9

你应该使用

ui-sref='picture({ url: picture.url })'
Run Code Online (Sandbox Code Playgroud)

代替

ui-sref='picture({ url: {{picture.url}} })'
Run Code Online (Sandbox Code Playgroud)

有关更多信息和示例,请参见http://angular-ui.github.io/ui-router/site/#/api/ui.router.state.directive:ui-sref.