在我的AngularJS应用程序中,我的路线如下:
.when('/:project/:page', {
templateUrl: '/ui-editor/editor',
controller: 'EditorCtrl'
})
在视图中,我有一个看起来像这样的链接:
<a href="/{{currentProjectId}}/{{currentPageId + 1}}">Next page</a>
当我点击我的应用中的该链接时,浏览器中的网址会正确更改(例如/myproject/1
更改为/myproject/2
),但收到错误Error: [ng:areq] Argument 'scope' is required
。错误引用的行是console.log
语句:
socket.on('ws:init-data', function(data) {
console.log('on ws:init-data', data);
// Handle incoming data from server
//...
});
如果我刷新浏览器,则会加载/myproject/2
所需的正确数据。
答案 0 :(得分:0)
使用ng-href
更好。它可以避免在角度解析之前点击链接。
<a ng-href="/{{currentProjectId}}/{{currentPageId + 1}}">Next page</a>
我不知道这个错误的确切原因,但我有一个建议:
你可以在dev_guide上看到:
任何时候您的应用程序需要对当前URL中的更改做出反应,或者您想要在浏览器中更改当前URL。
http://docs.angularjs.org/guide/dev_guide.services.$location