dpD*_*gnz 6 css sass node.js npm
我已经安装了 node-sass 并设置了选项,如使用 node-sass watch 选项和 npm run-script 的底部响应中所示,但是,它似乎对我不起作用。
这是我package.json最近尝试的文件:
{
"name": "linkup-paints",
"description": "NPM for Linkup Paint Supplies website for 2019",
"version": "1.0.2",
"main": "index.js",
"scripts": {
"start": "run-script-os",
"start:win32": "browser-sync start --server --files '**/*.css, **/*.html, **/*.js, !node_modules/**/*, !styles/**/*' --directory --port 7777 --browser \"C:\\Program Files\\Firefox Developer Edition\\firefox.exe\"",
"build-sass": "node-sass styles/main.scss css/main.css",
"watch-sass": "node-sass -w styles/main.scss css/main.css"
},
"author": "dpDesignz",
"license": "ISC",
"devDependencies": {
"browser-sync": "^2.26.3",
"run-script-os": "^1.0.3",
"node-sass": "^4.9.4"
}
}
Run Code Online (Sandbox Code Playgroud)
所以我尝试过:
"build:sass": "node-sass -r --output-style compressed styles/main.scss -o css/main.css",
"watch:sass": "npm run build:sass && npm run build:sass -- -w"
Run Code Online (Sandbox Code Playgroud)
和:
"css": "node-sass styles/main.scss -o css/main.css",
"css:watch": "npm run css && node-sass styles/main.scss -wo css/main.css"
Run Code Online (Sandbox Code Playgroud)
和:
"scss": "node-sass --watch styles/main.scss -o css/main.css"
Run Code Online (Sandbox Code Playgroud)
和(如 sidthesloth 的建议):
"build-sass": "node-sass styles/main.scss css/main.css",
"watch-sass": "node-sass -w styles/main.scss css/main.css"
Run Code Online (Sandbox Code Playgroud)
我跑步npm i,一旦完成我就跑步npm start。浏览器同步启动,并监视文件更改,但当我css/main.css更改文件时,我的文件不会编译或更新.scss。
我刚刚开始/学习如何使用 NPM,所以任何帮助将不胜感激。在过去的 2 个小时里,我已经翻遍了教程和答案(包括使用 node-sass、通过五个快速步骤观看和编译 Sass以及使用 node-sass 在 npm 脚本中编译 Sass 文件),但没有成功。
我怎样才能让我的watch和build工作?
因此,对于将来寻找此内容的任何人来说,这只是一个更新,我不明白脚本是如何工作的,也没有意识到我的脚本没有彼此并行运行。我以为npm start触发了我所有的脚本运行,但我没有意识到你必须调用所有脚本。我的最终package.json文件如下:
{
"name": "linkup-paints",
"version": "1.0.3",
"description": "NPM for Linkup Paint Supplies website for 2019",
"main": "index.js",
"directories": {
"lib": "lib"
},
"scripts": {
"start": "npm-run-all --parallel browser-sync build-sass watch-sass",
"browser-sync": "browser-sync start --server --files '**/*.css, **/*.html, **/*.js, !node_modules/**/*' -w --directory --port 7777 --browser \"C:\\Program Files\\Firefox Developer Edition\\firefox.exe\"",
"build-sass": "node-sass styles/main.scss css/main.css",
"watch-sass": "node-sass -w styles/main.scss css/main.css"
},
"keywords": [
"linkup",
"2019"
],
"repository": {},
"author": "dpDesignz",
"license": "ISC",
"devDependencies": {
"npm-run-all": "^4.1.3",
"browser-sync": "^2.26.3",
"node-sass": "^4.9.4"
},
"bugs": {
"url": "http://support.dpdesignz.co"
},
"homepage": "http://www.dpdesignz.co"
}
Run Code Online (Sandbox Code Playgroud)
我最终添加了npm-run-all脚本并更改了我的start参数,npm-run-all --parallel browser-sync build-sass watch-sass因为我不需要与run-script-os之前的旧参数进行跨操作系统兼容性。我还将-w( --watch) arg 放入浏览器同步行中,以使创建的.css文件触发同步,因为构建实际上会替换.css文件,而不是默认情况下按照浏览器同步的要求“更改”文件。
这是我用来使用 node-sass 构建或监视 SCSS 文件的两个 NPM 脚本:
"build-sass": "node-sass src/public/css/main.scss dist/public/css/main.css"
"watch-sass": "node-sass -w src/public/css/main.scss dist/public/css/main.css"
Run Code Online (Sandbox Code Playgroud)
希望这对你有用
| 归档时间: |
|
| 查看次数: |
7482 次 |
| 最近记录: |