gpt4 book ai didi

javascript - 构建没有依赖项的 ember-cli 插件

转载 作者:搜寻专家 更新时间:2023-10-31 23:27:19 25 4
gpt4 key购买 nike

我开发了一个运行良好的 ember-cli 插件。

当我运行命令 ember build 时,它基本上会创建一个 vendor.js 文件,其中包含我的插件和所有依赖项(ember、jquery 等...)大约3MB

作为我可以使用的 vendor ,我想知道是否可以将插件导出为它自己的插件 (my-addon.js) 而没有任何内部依赖项?

我基本上是在尝试让我的 ember-cli 插件成为一个 bower 组件,我可以将它包含在另一个 ember 项目中。我的插件和所有依赖项超过 100MB 的数据(包括 Node 模块、西兰花、测试...),所以当我使用 npm install my-addon 安装它时,它相当大。在我的其他项目中我真的不需要它,插件本身(dist 版本)大约有几 KB,这就是我所需要的......

基本上,这是我的项目的架构:

Ember 项目:

我的项目.git

/my-project
/app
/controllers etc...
/node_modules
/my-addon //My addon lives here for now and contains everything (all node_modules, bower_components, tests... about 100MB to download!)
Brocfile.js etc..

ember-cli 插件的基本架构:

my-addon.git

/my-addon
/addon
/app
/bower_components
/node_modules
/tests
Brocfile.js etc..

package.json:

{
"name": "my-addon",
"version": "0.0.1",
"directories": {
"doc": "doc",
"test": "tests"
},
"scripts": {
"start": "ember server",
"build": "ember build",
"test": "ember test"
},
"engines": {
"node": ">= 0.10.0"
},
"devDependencies": {
"body-parser": "^1.2.0",
"broccoli-sass": "0.3.2",
"broccoli-asset-rev": "0.3.1",
"broccoli-ember-hbs-template-compiler": "^1.6.1",
"ember-cli": "0.1.2",
"ember-cli-content-security-policy": "0.3.0",
"ember-cli-ic-ajax": "0.1.1",
"ember-cli-inject-live-reload": "^1.3.0",
"ember-cli-qunit": "0.1.0",
"ember-data": "1.0.0-beta.10",
"ember-export-application-global": "^1.0.0",
"express": "^4.8.5",
"glob": "^4.0.5"
}
"keywords": [
"ember-addon"
],

"ember-addon": {
"configPath": "tests/dummy/config"
}
}

谢谢

最佳答案

那么,发生了什么事?

我的回答是,你的本地仓库——应该有它需要处理的所有垃圾等等……但是你用 bower 设置的最终代码应该是一个只有你的/dist 的分支或者某事或 - github repo 应该只有未构建的代码。然后...您 bower install --save your-thing - 然后它会在 ember 应用程序中注册。然后只需 bower installupdate 等 - 它会检查配置 - 并根据 package.jsonbower.json.

如果您在此处记录您的发现并回答这个问题,那就太好了。我敢打赌这是一个非常常见的工作流程。

关于javascript - 构建没有依赖项的 ember-cli 插件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26791780/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com