首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >手写笔无法解析@import

手写笔无法解析@import
EN

Stack Overflow用户
提问于 2018-12-16 15:37:15
回答 1查看 1.4K关注 0票数 0

我在将手写笔.styl文件编译为css时遇到了一个问题。如果手写笔文件包含@import,那么我就会遇到“找不到@import文件”错误。例如,我有两个简单的手写笔文件:

代码语言:javascript
运行
复制
root
  - specific
     - particularButton.styl
  - button.styl

// --- button.styl ---
.button
  // some styles

// --- specific/particularButton.styl ---
@import "../button.styl"
.particular-button
    // some styles

我试图通过使用以下代码将它们转换为css:

代码语言:javascript
运行
复制
const stylus = require('stylus');
const fs = require('fs');

const filePath = // path to particularButton.styl

stylus(fs.readFileSync(filePath, 'utf8'))
    .set('paths', [
        // path to a folder that contain "button.styl"
    ])
    .render(function(err, css) {
        console.log(err);
        // <some action like> fs.writeFileSync(cssFileName, css);
    })

根据手写笔API,我试图让它与.set('path' ...一起工作,而不需要这个设置。但没有成功。

有人能帮忙吗?

P.S.环境: OSX Mohave,节点: 6.9.1,npm: 6.4.1,手写笔: 0.54.5

Upd

问题在@import "../button.styl"的相对路径上。如果我用一条通向button.styl的绝对路径来替换它,它就会变成工作。但这似乎是个很糟糕的解决方案..。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-12-16 16:30:23

好吧,我刚发现。

我的问题是,我试图在.set()方法中添加错误的路径。可能是有一点不清楚的记录,伊克。

particularButton.styl中出现相对导入的情况下,需要添加该文件本身的路径。不是导入文件。所以应该是:

代码语言:javascript
运行
复制
stylus(fs.readFileSync(filePath, 'utf8'))
    .set('paths', [
        // path to a folder that contain "particularButton.styl"
    ])
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53803710

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档