Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/tensorflow/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何简化我的npm sass包的@import路径? 处境_Import_Npm_Sass - Fatal编程技术网

如何简化我的npm sass包的@import路径? 处境

如何简化我的npm sass包的@import路径? 处境,import,npm,sass,Import,Npm,Sass,我开发了一个小型的sass包,并将其发布在npm上 要在项目中使用该包,请Inpm安装它,然后像这样导入主文件: @import'node_modules/my package/my package.scss' 这很有效 问题: 允许用户像这样导入它吗 @导入“我的包” 或 @import'my package.scss' 我想我看到了一些允许这样做的软件包。 这可能吗 非常感谢您的任何帮助 使用Gulp和Gulp sass,用户可以指定includePaths .pipe(sass({

我开发了一个小型的sass包,并将其发布在npm

要在项目中使用该包,请I
npm安装它,然后像这样导入主文件:

@import'node_modules/my package/my package.scss'

这很有效

问题: 允许用户像这样导入它吗

@导入“我的包”

@import'my package.scss'

我想我看到了一些允许这样做的软件包。 这可能吗


非常感谢您的任何帮助

使用Gulp和Gulp sass,用户可以指定
includePaths

.pipe(sass({
    includePaths: [
        './node_modules/your-package-name'
    ]
}))
这将告诉编译器在编译时始终通过附加要导入的路径来查找include

然后在他们的*.scss文件中,他们只需要

@import "your-package-name";


否则,我认为类似的设置是不可能的——毕竟,这只是一个URL,除非他们做一些预处理,否则他们需要指定它的完整路径

如果您使用Dart Sass,您可以将
--load path=node_modules
传递到您的监视脚本,然后在主Sass文件中添加
@import“我的包”

package.json
中的示例脚本:

“sass——加载路径=节点\模块——监视应用程序/sass:app/dist——压缩样式”



我花了很多时间试图弄明白这一点,并在无意中发现此解决方案之前安装了不需要的模块。

谢谢您的回答。我看到的可能就是这种大口大口大口的设置。那我就得坚持走完整的路了。谢谢你帮我澄清这一点。如果导入的包是一个作用域包,这是一样的吗<代码>@my package
@ChristopherFrancisco不应该是个问题,我认为。
@import "your-package-name/variables";