fex-team / fis3

FIS3
http://fis.baidu.com
BSD 2-Clause "Simplified" License
2.79k stars 694 forks source link

资源Id的配置如何使用的? #759

Open lienjun opened 8 years ago

lienjun commented 8 years ago

id 解释:指定文件的资源id。默认是 namespace + subpath 的值 值类型:string 默认值:namespace + subpath

假设 /static/lib/jquery.js 设定了特定的 id jquery, 那么在使用这个组件的时候,可以直接用这个 id;

var $ = require('jquery');

但是我在文件里面使用require('jquery')找不到这个文件

fis.match('/widget/jq/jq.js', {
    id: 'jq',
    isMod: true
});

文件widget/test/test.js

var $ = require('jq');
console.log('test', $);
Uncaught [ModJS] Cannot find module `jq`
2betop commented 8 years ago

目前这个可能支持得不太好,不过如果要使用别名,可以先用这个方法 https://github.com/fex-team/fis3-hook-commonjs

lienjun commented 8 years ago

是不是推荐直接用文件路径的方式引用模块?

2betop commented 8 years ago

对的。

lienjun commented 8 years ago

我还想问个问题,scss资源是不是只能在当前namespace下面才能@import,比如我当前在home子项目里面,我想引用common里面的scss

@import "common:static/styles/vars.scss"

实际上报错了。是不是我对子项目的理解有错误啊

2betop commented 8 years ago

不能有跨模块的编译依赖。所以不行。

lienjun commented 8 years ago

嗯,谢谢