我正在实现购物车,并希望将数据存储在localStorage中.我想观察变量$scope.cart
的变化,以便我可以更新localStorage
cart变量如下所示:
[{'name':'foo', 'id':'bar', 'amount': 1 },...]
Run Code Online (Sandbox Code Playgroud)
这是手表的代码.
$scope.updateCart = function(){
localStorageService.add('cart',JSON.stringify($scope.cart));
alert('cart updated');
};
$scope.$watch($scope.cart, $scope.updateCart(), true);
Run Code Online (Sandbox Code Playgroud)
这是用户更改模型的HTML.
<li ng-repeat="item in cart">
{{item.name}} <input type="text" ng-model="item.amount">
</li>
Run Code Online (Sandbox Code Playgroud)
使用以下代码,updateCart()
永远不会触发该方法.我不确定我做错了什么.我检查$scope.cart
变量确实发生了变化,但未触发更新.
我之前一直token_authenticatable
用来保护我的API,但是,我发现它已被弃用了?我应该使用什么,为什么他们弃用它?
我在viewWillLayoutSubviews中使用此代码来设置地图的初始区域.
CLLocationCoordinate2D startCoord = CLLocationCoordinate2DMake(13.747266, 100.526804);
MKCoordinateRegion adjustedRegion = [self.mapView regionThatFits:MKCoordinateRegionMakeWithDistance(startCoord, 800, 800)];
[self.mapView setRegion:adjustedRegion animated:YES];
NSLog(@"%f",adjustedRegion.span.latitudeDelta);
Run Code Online (Sandbox Code Playgroud)
但是,初始缩放级别不起作用.坐标是正确的,但它总是放大到最大级别.我检查区域的范围,得到0.0.我该如何解决.
我试图模仿一个猫鼬模型jest
,但正在收到Cannot create property 'constructor' on number '1'
错误.我能够通过使用下面显示的2个文件创建项目来重现该问题.有没有办法模拟猫鼬模型jest
?
./model.js
const mongoose = require('mongoose')
const Schema = mongoose.Schema
const schema = new Schema({
name: String
})
module.exports = mongoose.model('Test', schema)
Run Code Online (Sandbox Code Playgroud)
./model.test.js
jest.mock('./model')
const Test = require('./model')
// Test.findOne.mockImplementation = () => {
// ...
// }
Run Code Online (Sandbox Code Playgroud)
错误:
FAIL ./model.test.js
? Test suite failed to run
TypeError: Cannot create property 'constructor' on number '1'
at ModuleMockerClass._generateMock (../../jitta/sandbox/rest_api/node_modules/jest-mock/build/index.js:458:34)
at Array.forEach (native)
at Array.forEach (native)
at Array.forEach (native)
Run Code Online (Sandbox Code Playgroud)
更新: …
所以我尝试更改我的UISegmentedControl标题的text属性,但它不起作用,没有任何改变.我还应用了自定义背景和分隔符,它可以正常工作,但不是这样.
NSDictionary *normaltextAttr =
@{[UIColor blackColor]: UITextAttributeTextColor,
[UIColor clearColor]: UITextAttributeTextShadowColor,
[UIFont fontWithName:_regularFont size:20.f]: UITextAttributeFont};
NSDictionary *selectedtextAttr =
@{[UIColor colorWithRed:135.0/255.0 green:135.0/255.0 blue:135.0/255.0 alpha:1.0]: UITextAttributeTextColor,
[UIColor clearColor]: UITextAttributeTextShadowColor,
[NSValue valueWithUIOffset:UIOffsetMake(0, 1)]: UITextAttributeTextShadowOffset,
[UIFont fontWithName:_regularFont size:0.0]: UITextAttributeFont};
[[UISegmentedControl appearance] setTitleTextAttributes:normaltextAttr
forState:UIControlStateNormal];
[[UISegmentedControl appearance] setTitleTextAttributes:selectedtextAttr
forState:UIControlStateSelected];
Run Code Online (Sandbox Code Playgroud) 我在尝试转换dequeueReusableCell
为MenuCollectionViewCell
我创建了一个文件的文件时遇到了以下错误,并将故事板中的单元格更改为该类.我正在关注raywenderlich的这个教程.我用示例检查了代码,但找不到错误.导致此错误的常见错误是什么?
如果我将铸件更改回as UICollectionViewCell
然后错误消失.
override func collectionView(collectionView: UICollectionView, cellForItemAtIndexPath indexPath: NSIndexPath) -> UICollectionViewCell {
let cell = collectionView.dequeueReusableCellWithReuseIdentifier(reuseIdentifier, forIndexPath: indexPath) as MenuCollectionViewCell
cell.backgroundColor = UIColor.lightGrayColor()
return cell
}
Run Code Online (Sandbox Code Playgroud)
错误:
libswiftCore.dylib`swift_dynamicCastClassUnconditional:
0x10bd39860: pushq %rbp
0x10bd39861: movq %rsp, %rbp
0x10bd39864: testq %rdi, %rdi
0x10bd39867: je 0x10bd3989e ; swift_dynamicCastClassUnconditional + 62
0x10bd39869: movabsq $-0x7fffffffffffffff, %rax
0x10bd39873: testq %rax, %rdi
0x10bd39876: jne 0x10bd3989e ; swift_dynamicCastClassUnconditional + 62
0x10bd39878: leaq 0xb52e9(%rip), %rax
0x10bd3987f: movq (%rax), %rax
0x10bd39882: …
Run Code Online (Sandbox Code Playgroud) 我有一个具有独立的前端(的WebPack)和后端(快递/ mongodb的),我一个项目,想分开的package.json
,同时要在它们之间共享一些逻辑/实用代码.如何组织我的文件结构,以便我可以适当地分离它们的依赖项.
现在这是我的文件结构,前端和后端共享相同的内容 node_modules
app
|
| - frontend
| | - index.js
| | - src
|
| - backend
| | - index.js
| | - models
| | - api
| | - statics (webpack builds into here)
|
| - lib
| | - logic here (may require npm dependency)
|
|- package.json
|- webpack.config.js
Run Code Online (Sandbox Code Playgroud)
如果它们都不需要lib目录,我可以轻松地将它们分成2个npm项目,但这实际上意味着我必须将代码复制到两个文件夹中.有没有更好的方法来实现这一目标?
我正在尝试使用CoreGraphic将渐变应用于UIImage; 但是,我得到的结果并不是很好.我想在图像的底部创建一个黑色到透明的渐变,为我创建一个对比,让我放置一些文本.然而,我能够的渐变与图像不能很好地融合; 你可以清楚地看到中心的分离.我正在寻找的结果就像这个应用程序:http://capptivate.co/2014/02/17/yummly-3/ 我应该如何应用渐变来实现这一目标?(我必须将其应用于大量图像).
我的结果:
这是我的代码:
func imageWithGradient(img:UIImage!) -> UIImage{
UIGraphicsBeginImageContext(img.size)
var context = UIGraphicsGetCurrentContext()
img.drawAtPoint(CGPointMake(0, 0))
let colorSpace = CGColorSpaceCreateDeviceRGB()
let locations:[CGFloat] = [0.50, 1.0]
//1 = opaque
//0 = transparent
let bottom = UIColor(red: 0, green: 0, blue: 0, alpha: 0.5).CGColor
let top = UIColor(red: 0, green: 0, blue: 0, alpha: 0).CGColor
let gradient = CGGradientCreateWithColors(colorSpace,
[top, bottom], locations)
let startPoint = CGPointMake(img.size.width/2, 0)
let endPoint = CGPointMake(img.size.width/2, img.size.height)
CGContextDrawLinearGradient(context, gradient, startPoint, endPoint, 0) …
Run Code Online (Sandbox Code Playgroud) 通常rails会自动渲染与控制器和动作相对应的文件.例如一个动作index
中TestController
可能使文件app/views/test/index.html.erb
.有没有动态的方法可以获取相应的动作视图文件的路径?例如,如果我有test#something
想要的话app/views/test/something.html.erb
.
是否可以在气流模板中解析 JSON 字符串?
我有一个 HttpSensor,它通过 REST API 监视作业,但作业 ID 是在上游任务的响应中,该任务已xcom_push
标记为True
.
我想做类似以下的事情,但是,此代码给出了错误 jinja2.exceptions.UndefinedError: 'json' is undefined
t1 = SimpleHttpOperator(
http_conn_id="s1",
task_id="job",
endpoint="some_url",
method='POST',
data=json.dumps({ "foo": "bar" }),
xcom_push=True,
dag=dag,
)
t2 = HttpSensor(
http_conn_id="s1",
task_id="finish_job",
endpoint="job/{{ json.loads(ti.xcom_pull(\"job\")).jobId }}",
response_check=lambda response: True if response.json().state == "complete" else False,
poke_interval=5,
dag=dag
)
t2.set_upstream(t1)
Run Code Online (Sandbox Code Playgroud)