Aurelia:历史必须实现activate()
我是Aurelia的新手,尝试用id实现一些“简单”的动态路由Aurelia:历史必须实现activate(),aurelia,Aurelia,我是Aurelia的新手,尝试用id实现一些“简单”的动态路由 config.map([ { route: 'questions/:id', . . .} ]); 我收到一个运行时错误,表明我缺少activate()方法 我发现有一个activate()丢失了,并且它正在下降到原型并抛出这个错误,我只是不知道在哪里添加activate()。我在我的模块中有它,但是我应该在我的应用程序类或这个历史对象中有它吗 谢谢 -John您出现此问题的原因是,您没有通过以下方式在插件中包括a
config.map([
{ route: 'questions/:id', . . .}
]);
我收到一个运行时错误,表明我缺少activate()方法
我发现有一个activate()丢失了,并且它正在下降到原型并抛出这个错误,我只是不知道在哪里添加activate()。我在我的模块中有它,但是我应该在我的应用程序类或这个历史对象中有它吗
谢谢
-John您出现此问题的原因是,您没有通过以下方式在插件中包括
aurelia历史记录浏览器:aurelia.use.history()
或aurelia.use.standardConfiguration()
aureliahistorybrowser
模块实现了aureliahistory
抽象类history
,它是浏览器本机历史
的包装器。抽象类History
在调用时基本上会在方法名称中抛出一个错误,就像您看到的错误一样。好吧,为了其他奋斗者的利益,我尝试回溯我的步骤并拼凑如何解决我的问题-挑战是我更改了许多变量。
但我相信我能够重新创建我的错误,并且我以与以前相同的方式破坏了我的应用程序。
当我将aurelia路由器版本从1.2.1升级到1.6.2时,可能已经开始出现错误
这是我以前的package.json:
{
"name": "ClientWeb",
"private": true,
"version": "0.0.0",
"devDependencies": {
"@types/webpack-env": "^1.13.0",
"aspnet-webpack": "^2.0.1",
"aurelia-bootstrapper": "^2.0.1",
"aurelia-fetch-client": "^1.0.1",
"aurelia-framework": "^1.1.0",
"aurelia-loader-webpack": "^2.0.0",
"aurelia-pal": "^1.3.0",
"aurelia-router": "^1.2.1",
"aurelia-webpack-plugin": "^2.0.0-rc.2",
"bootstrap": "^3.3.7",
"css-loader": "^0.28.0",
"extract-text-webpack-plugin": "^2.1.0",
"file-loader": "^0.11.1",
"html-loader": "^0.4.5",
"isomorphic-fetch": "^2.2.1",
"jquery": "^3.2.1",
"json-loader": "^0.5.4",
"style-loader": "^0.16.1",
"ts-loader": "^2.0.3",
"typescript": "^2.2.2",
"url-loader": "^0.5.8",
"webpack": "^2.3.3",
"webpack-hot-middleware": "^2.18.0"
},
"dependencies": {
"@types/vis": "^4.21.7",
"vis": "^4.21.0"
}
}
当时我正在将几个库升级到最新版本,但我尝试恢复到这个原始的package.json,只是更新了aurelia router版本-它会生成原始错误
希望这对别人有帮助
-John图像和屏幕截图可以很好地添加到帖子中,但请确保没有它们的帖子仍然清晰有用。如果你发布代码或错误消息的图片,请确保你也可以直接复制、粘贴或键入实际的代码/消息到帖子中。这是一个很好的指导,我希望它能帮助其他人。对于我的问题,我认为我在使用WebPack和node_模块时遇到了一些问题。我很快进入了更新地狱,最终删除了我的node_模块,更新到最新的模块并重新安装。它现在可以工作了,我已经有了standardConfiguration()方法。非常感谢@bigopen-我很感谢您花时间回复,但我很难将其标记为已接受,因为它不符合规定的指南:“单击接受此答案,因为它解决了您的问题,或者对找到您的解决方案最有帮助……”这不是我的问题,指南也没有帮助我解决我的问题,但这确实是一个很好的回答,其他人可能会认为这是有价值的。我明白了,解决你问题的办法应该是我的回答和你所做的结合起来。如果你能自己回答并将其标记为已接受,那就太好了,因为这将有助于未来的大众。干得好@JohnKoz:)
{
"name": "ClientWeb",
"private": true,
"version": "0.0.0",
"devDependencies": {
"@types/webpack-env": "^1.13.0",
"aspnet-webpack": "^2.0.1",
"aurelia-bootstrapper": "^2.0.1",
"aurelia-fetch-client": "^1.0.1",
"aurelia-framework": "^1.1.0",
"aurelia-loader-webpack": "^2.0.0",
"aurelia-pal": "^1.3.0",
"aurelia-router": "^1.2.1",
"aurelia-webpack-plugin": "^2.0.0-rc.2",
"bootstrap": "^3.3.7",
"css-loader": "^0.28.0",
"extract-text-webpack-plugin": "^2.1.0",
"file-loader": "^0.11.1",
"html-loader": "^0.4.5",
"isomorphic-fetch": "^2.2.1",
"jquery": "^3.2.1",
"json-loader": "^0.5.4",
"style-loader": "^0.16.1",
"ts-loader": "^2.0.3",
"typescript": "^2.2.2",
"url-loader": "^0.5.8",
"webpack": "^2.3.3",
"webpack-hot-middleware": "^2.18.0"
},
"dependencies": {
"@types/vis": "^4.21.7",
"vis": "^4.21.0"
}
}