我目前的工作流程:
name: Node CI
on: [push]
jobs:
build:
runs-on: ubuntu-latest
strategy:
matrix:
node-version: [10.x]
steps:
- uses: actions/checkout@v1
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v1
with:
node-version: ${{ matrix.node-version }}
- name: npm install, build, and test
run: |
npm install yarn -g
yarn
yarn test
env:
CI: true
NPM_TOKEN: ${{ secrets.NPM_TOKEN }}
Run Code Online (Sandbox Code Playgroud)
我已经NPM_TOKEN在 repo secrets 区域设置了我的。
该令牌也在 Netlify 上使用,并且 netlify 构建过程有效。
当此工作流运行时,我的任何私有包都会收到 404。
我究竟做错了什么?
我正在使用 Material UI React 组件进行 React 项目。我想导入MuiThemeProvider在src/index.js像这样
import MuiThemeProvider from "@material-ui/core/styles/MuiThemeProvider";
。
但我得到
找不到模块:无法解析“@material-ui/core/styles/MuiThemeProvider”
检查/node_modules/@material-ui/styles没有MuiThemeProvider。我不明白。在另一台计算机上全新安装项目,其中/node_modules/@material-ui/styles包含MuiThemeProvider. 我删除了node_modules文件夹并使用 重新安装yarn install,但这没有做任何事情。当我在另一台计算机上全新安装该项目时,它工作正常。
这些是来自 package.json
"dependencies": {
"@material-ui/core": "^4.5.0",
"@material-ui/icons": "^3.0.2",
"@turf/turf": "^5.1.6",
"axios": "^0.18.0",
"epsg-index": "^0.27.0",
"immutable": "^3.8.2",
"immutable-prop-types": "^0.0.3",
"lodash": "^4.17.11",
"mapbox-gl": "^1.2.0",
"moment": "^2.22.2",
"particles.js": "^2.0.0",
"phoenix": "^1.4.8",
"proj4": "^2.5.0",
"prop-types": "^15.7.2",
"rc-tooltip": "^3.7.3",
"react": "^16.4.2",
"react-dom": "^16.9.0",
"react-loader-spinner": "^2.3.0",
"react-redux": "^5.0.7",
"react-router-dom": "^5.0.0",
"react-slick": "^0.23.2", …Run Code Online (Sandbox Code Playgroud) 我遇到了一个我不确定如何以最佳方式解决的问题。这里是:
我们最近开始使用私有 NPM 包,并试图找出如何将我们的本地开发循环与 CI 和部署管道联系起来。
我已经查看并开始利用 NPM_TOKEN 变量。在 CI 中,我们正在执行以下操作:
echo "//registry.yarnpkg.com/:_authToken=$NPM_TOKEN" >> ~/.npmrc
Run Code Online (Sandbox Code Playgroud)
这很有效,但在 Heroku 上部署期间,我们无法访问 home。所以为了让它在 Heroku 上工作,我们在项目目录中添加了一个 .npmrc 文件。这很有效,因为 npm 使用环境变量来填充它。
问题是在本地,所有纱线命令都因缺少变量而失败。NPM 网站 ( https://blog.npmjs.org/post/118393368555/deploying-with-npm-private-modules )上的建议方法是将令牌添加到 .profile 中的环境中。这似乎不是最好的解决方案,因为该设置现在是全局的,并且应该保存在每个存储库中。
我在这里发现了一个使用 npm 的类似问题,但它似乎不适用于纱线。 在 .npmrc 中使用身份验证令牌 那里 的注释还提到它不适用于 npm,并且没有提到 dotenv 文件的文档。
有没有更好的方法来处理这个问题?似乎是一个很早就应该解决的常见问题......
我想知道在下面的案例B和案例A(反之亦然)中是否有任何速度优势:
bool test1(){
// Check something, return true/false
}
bool test2(){
// Check something, return true/false
}
Run Code Online (Sandbox Code Playgroud)
案例A.
if(test1() && test2()){
//execute XYZ
}
Run Code Online (Sandbox Code Playgroud)
案例B
if(test1()){
if(test2()){
//execute XYZ
}
}
Run Code Online (Sandbox Code Playgroud)
我的意思是,如果涉及的例程test1()并test2()花费一些时间来执行,那么直觉上有些人可能认为案例B可能运行得更快,因为test2()只有在测试1为真时才会执行,或者编译器是否足够聪明地确定案例A的逻辑顺序,一旦test1(...)失败,那么test2(...)不需要检查?
也许以上是相同的,有人可以让我知道......
我正在按照本教程安装Bootstrap with Yarn这是在rails 5.1上新版Bootstrap 4的命令,他们在这里观看:
yarn add bootstrap@4.0.0-alpha.6
Run Code Online (Sandbox Code Playgroud)
所以我注意到它安装了bootstrap 4 alpha 6,JQuery3和Tether.所以它已经在.gitignore上添加:
/node_modules
/yarn-error.log
Run Code Online (Sandbox Code Playgroud)
并且已经在我的config/initializers/assets.rb中设置了
Rails.application.config.assets.paths << Rails.root.join('node_modules')
Run Code Online (Sandbox Code Playgroud)
我需要穿上我的application.js
//= require rails-ujs
//= require turbolinks
//= require bootstrap/dist/js/bootstrap
//= require_tree .
Run Code Online (Sandbox Code Playgroud)
在我的application.scss中
/*
*= require bootstrap/dist/css/bootstrap
*= require_tree .
*= require_self
*/
Run Code Online (Sandbox Code Playgroud)
我的问题是,有必要将app.js和application.scss放在JQuery和Tether上工作吗?怎么样?
我正在尝试这个:application.js
//= require rails-ujs
//= require turbolinks
//= require bootstrap/dist/js/bootstrap
//= require jquery/dist/jquery
//= require tether/dist/js/tether
//= require_tree .
Run Code Online (Sandbox Code Playgroud)
application.scss
/*
*= require bootstrap/dist/css/bootstrap
*= require tether/dist/css/tether
*= require_tree .
*= require_self
*/ …Run Code Online (Sandbox Code Playgroud) 我正在尝试在 Rails 中使用 Yarn 安装 Modernizr。我愿意'yarn add Modernizr',它被添加到 .node-modules 目录中。但是,我不知道如何从 Rails 正确引用它。
我已经添加//= require modernizr/src/Modernizr到 application.js。但我不确定这是正确的参考,因为我收到以下错误:
Uncaught ReferenceError: define is not defined
Run Code Online (Sandbox Code Playgroud)
我是否需要以某种方式构建 Modernizr 库。纱线不这样做吗?我对此有点陌生,正在努力理解 webpacker、yarn 和 rails 之间的关系,以及如何使用yarn正确构建和添加库到 rails。这些教程都让它看起来好像很简单,'yarn add xxx'但我似乎遗漏了一些东西。谢谢你。
尝试遵循 React 教程(此处: https: //hackernoon.com/simple-react-development-in-2017-113bd563691f),但我不断收到 JSON 错误“解析 JSON 时出错。JSON 输入意外结束。” 我用的是纱线。如何修复 JSON 输入?
在尝试使用 selenium docker 映像“selenium/standalone”进行 dockerise selenium End2End 测试时,我收到错误:从 selenium 服务器检索新会话时出错连接被拒绝!硒服务器启动了吗?是的,selenium 服务器根据控制台输出启动......有什么想法吗?
FROM selenium/standalone-chrome
USER root
# installing node
RUN apt-get update
RUN apt-get install -y curl
RUN curl -sL https://deb.nodesource.com/setup_7.x | bash
RUN apt-get install -y nodejs
RUN node -v
RUN npm -v
# Installing Yarn
#RUN rm -r /usr/local/bin/yarn
RUN npm install -g -y yarn
ENV PATH $PATH:/usr/local/bin/yarn
#copying files
WORKDIR /app
COPY . .
# debug
RUN ls -alh .
#installing yarn
RUN yarn install
EXPOSE 4444
RUN …Run Code Online (Sandbox Code Playgroud) ignite-ir-boilerplate无法安装.它是一个有效的NPM模块吗?
Command failed: yarn add ignite-ir-boilerplate --dev
Usage: yarn [options]
yarn: error: no such option: --dev
Run Code Online (Sandbox Code Playgroud) 我已经安装了包progressbar.js使用$ yarn add progressbar.js。现在我试图通过添加//= require progressbar.js到 my来要求它application.js,但是每次我尝试加载页面时都会出现错误:
ActionView::Template::Error(找不到类型为“application/javascript”的文件“progressbar.js”...
我已经成功地使用相同的过程来安装和需要jquery。尝试另一个名称中带有点的包(如ipaddr.js)失败并出现相同的错误,因此我怀疑名称中带有点的包有什么特别之处。
yarnpkg ×9
javascript ×2
node.js ×2
npm ×2
reactjs ×2
c++ ×1
docker ×1
github ×1
if-statement ×1
jquery ×1
material-ui ×1
optimization ×1
performance ×1
ruby ×1
selenium ×1
tether ×1