fis3-hook-lego
Advanced tools
Comparing version 0.1.0 to 0.2.0
10
index.js
@@ -10,7 +10,11 @@ /** | ||
fis.on('lookup:file', function(info, file) { | ||
if (/^[a-zA-Z0-9_@.-]+$/.test(info.rest)) { | ||
var ret = lookup(info.rest); | ||
info.id = info.moduleId = ret; | ||
// 暂时只分析 js 文件,后续 Ques 可以这里搞起 | ||
if (file.isJsLike && /^[a-zA-Z0-9_@.-]+$/.test(info.rest)) { | ||
var ret = lookup(info.rest); | ||
if (ret) { | ||
info.id = info.moduleId = ret; | ||
} | ||
} | ||
}); | ||
}; |
@@ -19,7 +19,6 @@ /** | ||
module.exports = function(id) { | ||
var info = getModule(id); | ||
info = info || getLegoModule(id); | ||
return info; | ||
return getModule(id) || getLegoModule(id); | ||
}; | ||
/** | ||
@@ -31,3 +30,3 @@ * 从 modules 目录获取模块 | ||
if (_.isFile(_(mod, id + '.js'))) { | ||
fis.log.info('lego: get %s from modules', id); | ||
fis.log.debug('lego: get %s from <modules>', id); | ||
return id; | ||
@@ -50,3 +49,3 @@ } | ||
fis.log.info('lego: get %s from lego_modules', id); | ||
fis.log.debug('lego: get %s from <lego_modules>', id); | ||
if (!_.isDir(root)) { | ||
@@ -53,0 +52,0 @@ return fis.log.error('lego: 找不到 lego 组件 %s 的目录', id); |
{ | ||
"name": "fis3-hook-lego", | ||
"version": "0.1.0", | ||
"version": "0.2.0", | ||
"description": "lego 包管理模块查找", | ||
"keywords": [ | ||
"lego", "fis", "fis3", "fis3-hook" | ||
"lego", | ||
"fis", | ||
"fis3", | ||
"fis3-hook" | ||
], | ||
"main": "index.js", | ||
"script": { | ||
"test": "mocha test/" | ||
}, | ||
"repository": { | ||
@@ -22,3 +29,8 @@ "type": "git", | ||
"compare-version": "^0.1.2" | ||
}, | ||
"devDependencies": { | ||
"chai": "^3.2.0", | ||
"fis3": "^3.2.0", | ||
"fis3-hook-commonjs": "^0.1.1" | ||
} | ||
} |
@@ -8,20 +8,46 @@ # fis3-hook-lego | ||
``` | ||
root/ | ||
src/ | ||
lego_modules/ | ||
jquery/ | ||
2.0.1/ | ||
jquery.js | ||
package.json | ||
pages/ | ||
index/ | ||
/main.js | ||
. | ||
├── index.html | ||
├── lego_modules | ||
│ ├── dialog | ||
│ │ └── 0.1.0 | ||
│ │ ├── custom.js | ||
│ │ └── package.json | ||
│ ├── slider | ||
│ │ └── 0.1.0 | ||
│ │ └── index.js | ||
│ ├── tab | ||
│ │ └── 0.1.0 | ||
│ │ └── tab.js | ||
│ └── test_module | ||
│ └── 0.1.0 | ||
│ └── index.js | ||
├── map.json | ||
├── modules | ||
│ ├── common | ||
│ │ ├── common.js | ||
│ │ └── header | ||
│ │ ├── db.header.js | ||
│ │ └── header.js | ||
│ ├── common.js | ||
│ ├── index | ||
│ │ └── header | ||
│ │ ├── db.header.js | ||
│ │ └── header.js | ||
│ └── test_module.js | ||
└── pages | ||
└── index | ||
├── main.css | ||
└── main.js | ||
``` | ||
现在 `main.js ` 直接 | ||
现在 `main.js ` 内容: | ||
```js | ||
require('jquery'); | ||
require('jquery@1.9.1'); | ||
var dialog = require('dialog'); | ||
var slider = require('slider'); | ||
var tab = require('tab'); // lego_modules 中的快速引用 | ||
var common = require('common'); | ||
var testModule = require('test_module'); | ||
var header = require('index/header'); // modules 中也可以省去 `modules` | ||
``` | ||
即可引用 `jquery` 。 | ||
@@ -41,6 +67,14 @@ | ||
fis.match(/^\/lego_modules\/(.+)\.js$/i, { | ||
isMod: true, | ||
id: '$1' | ||
}); | ||
fis.match(/^\/modules\/(.+)\.js$/, { | ||
isMod: true, | ||
id: '$1' | ||
}) | ||
.match(/^\/modules\/((?:[^\/]+\/)*)([^\/]+)\/\2\.(js)$/i, { | ||
//isMod: true, | ||
id: '$1$2' | ||
}) | ||
.match(/^\/lego_modules\/(.+)\.js$/i, { | ||
isMod: true, | ||
id: '$1' | ||
}); | ||
``` |
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
50046
17
87
78
3