我已经使用ember-cli成功创建了一个小应用程序。我尝试将它推送到我的github仓库的gh-pages分支,但它在浏览器控制台中显示错误
Uncaught ReferenceError: require is not defined
从dist/assets
加载vendor.js和vendor.js文件也失败了。
我无法在本地计算机的dist
文件夹中运行独立的余烬应用程序,同样的错误。
有人试过吗。如果是,如何正确地做到这一点?
答案 0 :(得分:5)
自2014年12月起,还有ember-cli addon for this。
首先确保在modulePrefix
中将config/environment.js
设置为github上的repo名称。例如,对于https://github.com/username/my-cool-repo,它应该是modulePrefix: 'my-cool-repo'
。
然后按照以下说明操作:
安装插件。
$ ember install:addon ember-cli-github-pages
提交插件所做的更改。
$ git add . && git commit -m "Installed addon ember-cli-github-pages"
仅使用必要的文件创建gh-pages
分支
$ git checkout --orphan gh-pages && rm -rf `ls -a | grep -vE '.gitignore|.git|node_modules|bower_components|\.\/|\.\.\/'` && git add . && git commit -m "Initial gh-pages commit"
切换回源分支(很可能是master
)
$ git checkout master
将您的余烬应用构建到gh-pages
分支
$ ember gh-pages:commit --message "Initial gh-pages release"
将所有内容(或至少gh-pages
分支)推送到github。
(这与ember-cli< = 0.1.4不同,将来可能会再次发生变化。请务必访问addon's readme。)
答案 1 :(得分:2)
正如评论已经说明的那样:将baseUrl
中的config/environment.js
更改为您要将应用推送到的GitHub存储库的名称。例如:
您的GitHub存储库名为myEmberApplication
,位于
https://github.com/yourUsername/myEmberApplication.git
然后该项目的gh-pages的URL将是
https://yourUsername.github.io/myEmberApplication
因此,在您的情况下,您必须将baseUrl
从/
(默认)更改为/myEmberApplication
。
您必须执行此操作的原因是因为ember-cli会将<base>
标头添加到您的index.html
文件中。