Closed PetersonLian closed 8 years ago
应该指定某个模块安装 scrat install XXX/XXX
其实不是缓存,应该是因为我虽然更新了正确的component.json。但是tag还是使用老的,所以总是安装老的代码
建议不用 scrat install
, 用 fis 自带的 install.
scrat install
当时做的比较早, 属于探索阶段.
参见: https://github.com/fis-components/components
PS: 我们 scrat 这边的实践, 目前倾向于不用第三方 components:
我系统内的scrat -v 0.5.18,是最新版吗? npm源上是跟此代码基本同步的吗?发新版本会更新npm的源吗?
还有一个问题。 关于第三方的components,我采用您说的方式一
直接人工拷贝进来, 一般这种第三方类库升级的频率不是很高
来解决。
那么,假设我这库文件叫a.a.a.a.a.a.js
,那么问题来了。我该如何人工拷贝进来?
1) 我是放到component_modules里头呢?按照一定的规则?
2) 我目前是直接将其放入views文件夹里头?
我直接放入views文件夹里头,但当我通过require.async加载这个文件的时候,我需要给这个文件弄个alias别名。 但我如果没有理解错的话,scrat默认只会给component_modules文件夹下的文件建立alias。 那么如何手动建立alias呢?
git tag 跟 npm 是实时的。
要看下上面我给出的framework-conf的实现,我印象中会分析 components 目录的。
webapp 模式我这边现在很久不用了,@zack 来回答下吧
@zack-lin
component_modules 存放第三方公共组件,views 存放非模块化资源,components 存放内部业务组件 /component_modules/scrat-team-zepto/1.1.2/index.js /component_modules/scrat-team-zepto/1.1.2/component.json
看样子,我的a.a.a.a.a.a.js
的文件,我应该按照component_modules的规矩,手动放入到component_modules里头。
还有一个思路是,我扩展scrat的index.js里头的fis设置信息,主要是添加postpackage选项,然后自己重新Make一个scrat命令
不用, 直接放到 components 目录即可.
https://github.com/scrat-team/scrat/blob/master/plugins%2Fprepackager%2Fframework-conf.js#L118
这里有分析 components 目录的
恩。components也可以。
我最后采用方法。假设库文件名字叫做a.js 我直接把a.js复制到components/a/a.js里头。 就有alias. 另外,两点问题。 1) 我views目录下面,我想再某个文件里头,譬如lib.js里头,直接inline a.js的内容,我目前写法是inline(../../components/a/a.js),这样合适吗? 2) 假设我的库文件名字叫做a.b.c.d.e.js,那么如果此时放到components里头(不改名的前提下),应该怎么放到components里头,从而能有alias。 可不答。
第一个,为何要 inline,通过 combo 就能解决请求问题了。而且 components parse 后会被 define 包裹,你 inline 不来。
第二个,我记得可以在 fis-conf 里面手动设置 alias 的。还是在我给出的那个文件里面分析的
我之前自己建立一个让scrat使用的component,然后我发现我component.json里头js名字写错了,故而我在我自己的github repo里头提交正确的component.json。 但,问题是我执行
scrat install
,依然是报错。 最后安装的控件,也是错误名字的js