1

抱歉打扰:

我刚刚花了几天时间学习 angularjs 并且(哇)设法让 mean.io 运行。

现在我简直不敢相信我无法向示例应用程序添加新路由(通过身份验证)。

我的意思是,非常简单:

如果在 (\views) list.html 页面中,此链接指出:

list items if .length > 0 ... else
<h1 data-ng-hide="!articles || articles.length">No articles yet. <br> Why don't you <a href="/#!/articles/create">Create One</a>?</h1>

并且这条路线在 (\routes\)articles.js 中定义为

$stateProvider
        .state('all articles', {
            url: '/articles',
            templateUrl: 'articles/views/list.html',
            resolve: {
                loggedin: checkLoggedin
            }
        })
        .state('create article', {
            url: '/articles/create',
            templateUrl: 'articles/views/create.html',
            resolve: {
                loggedin: checkLoggedin
            }
        })
        ...

(注1:create html模板的url其实是/articles/public/views/create.html,但是这段代码有效,别问我为什么;

注意2:名称/“链接”(“创建文章”)也用于从标题导航(gation)调用此页面

<li data-ng-repeat="item in menus.main" ui-route="/{{item.link}}" ng-class="{active: $uiRoute}"><a mean-token="item.link" ui-sref='{{item.link}}'>{{item.title}}</a></li>

而“创建新文章”(.title)被添加到 app.js 中的 menus-var 中,链接 =“创建文章”

好吧,到目前为止一切都很好,但是为什么我在视图中进行简单的更改/增强并尝试

<h1 data-ng-hide="!articles || articles.length">No articles yet. <br> Why don't you <a href="/#!/articles/create">Create One</a>?</h1>

<h1 data-ng-hide="!articles || articles.length">No articles yet. <br> Why don't you <a href="/#!/articles/create2**">Create Two</a>?</h1>

并添加到 $stateProvider

.state('create article2', {
            url: '/articles/create2',
            templateUrl: 'articles/views/create.html',
            resolve: {
                loggedin: checkLoggedin
            }
        })

我收到错误“Cast to ObjectId failed for value "create2" at path "_id",即使我复制了 create.html,将其命名为 create2.html,在 templateurl 中更改,将其全部清空(没有 Ctrl' er) 等当然 create.html-template 附加了一个 ArticleController(在“html 代码”中),但据我所知,这应该不是问题。

路径“_id”处的错误“ObjectId failed”...发生在 mongoose/...objectid.js);我猜它与会话对象或更可能与身份验证模块有关。

如果有人介意告诉我我缺少什么,非常感谢,...(找不到任何有用的文档供 mean.io 初学者使用)

4

0 回答 0